.bind에 관해서
194
작성한 질문수 0
5:10 쯤에 a를 가지고 새로운 함수를 만들어줘 this는 b가 되었으면 좋겠고, 인자에는 1과 2를 미리 넣어둘께, 이렇게해서 새로 만들 함수는 변수D에 담아줘 그 변수 D는 함수인데, 1과 2를 받지말고 그 뒤에있는 3번째 인자만 받도록 해줘 라고 말씀 하시는데 이게 이해가 조금 안되는데요.
미리 설정된 디폴트 파라미터가 있을 경우에 뒤에 붙여서 사용되는 것으로 알고있습니다. 실제 결과값도 1과 2를 받지말고 라는 부분이랑은 상충되는 부분이 있습니다. 어떻게 이해하면 좋을까요?
답변 2
2
음 저도 이 문서 보고 질문 드렸는데 제가 용어 선택이 실패했나보네요
"1과 2를 받지 말고"에서 이상하다 싶어서 질문 드렸습니다. 받지말라는게 아니라 이미 줬는데? 라고요
d변수에 함수를 넣을 때, 1과 2는 이미 인수로 설정되어 있으니 넘어가고,
d(3)로 주는 인수는 뒤에 붙여서 실행으로 이해했거든요. 근데 받지말라고 해서 뭔가 싶었습니다.
답변감사드립니다.
1
아마도 es6의 default parameter를 말씀하시는 것이 아닐까 싶은데, 그것과는 무관한 내용입니다.
function a (x, y, z) { console.log(x, y, z); }
var d = a.bind({}, 1, 2);
의 결과는
d = function (z) { console.log(1, 2, z); }
가 되는 것이에요.
인자 x, y는 이미 바인드 실행과 동시에 미리 넘겨놓고,
나머지 z인자만 받아 원래 내용을 실행하는 새로운 함수를 만들라는 명령입니다.
제 표현력의 한계로 좀더 잘 설명해 드리지 못한 것 같아 안타까움이 드네요... 아래 링크 참조해주시면 좋겠습니다.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Function/bind
인스턴스에서 prototype 프로퍼티에 직접 접근해야하는 이유
0
59
1
setTimeout 에서 this
0
81
1
2강부터 영상이 나오지 않습니다.
0
175
1
자바스크립트 주석에 이상한 점이 있어서 문의드립니다.
0
221
2
return 문 안에 여러 함수가 존재하는 것이 이해되지 않습니다.
1
259
1
클래스 static 멤버
1
253
1
실행컨텍스트와 스택프레임
2
567
1
프로토타입으로 상속할때 브릿지 사용 이유
0
320
1
호이스팅 관련 질문
1
335
1
책 66p. 예제 3-2 질문입니다.
0
356
1
강의 내용 10:58 캡슐화 질문입니다.
1
399
1
강의 내용 5:10 질문입니다.
1
422
2
전역 공간에서의 this
0
426
2
18:31 addEventListener의 this
1
480
1
outerEnvironmentReference 질문
1
372
1
실행 컨텍스트와 클로저에 대해 질문드립니다.
1
448
1
Object.prototype.constructor의 [[prototype]] ?
1
658
1
함수를 값으로 할당할 때
2
458
1
15:54 'ddd' 사라지는 오류?
4
375
1
프로토타입 getPrototypeOf(instance).constructor(n,a) 질문입니다.
1
406
1
기본형/가변형 질문입니당
0
334
0
선생님 그러면 섹션 0만 봐도 무방한가요!?
0
338
1
Hoisting과 environmentRecord에 관한 질문입니다.
1
294
1
안녕하세요, 데이터 변경 질문입니다.
0
330
1





