객체 리터럴 foo 외부에서 foo 내부 메서드의 내부 함수를 호출하는 방법은 무엇입니까? (아래 코드 참조)

프라나 브 레이 카르

let foo={
  name:"",
  method:function(){
    function bar(){
      return "bar";
    }
    //bar();   //(2)
  }
};
foo.method.bar(); //(1)

(1)하십시오 catch되지 않은 형식 오류가 발생합니다 : c.method.bar는 함수가 아닙니다, 나는 알고있다 foo.method.bar속성 키 / 이름이라고를 검색 bar내부 method,하지만 does'nt의 존재는, 그래서 전화를 어떻게 bar외부에서 액세스 할 때 foo하지 않고 이 (2)

확실한 성능

현재 코드가 주어지면 bar이후 남아 있는 참조가있는 항목 method이 호출 method되지 않고 bar자체를 호출하지 않기 때문에 불가능 합니다.

이와 같은 것을 원하면 bar외부 개체에 올려 놓으 십시오.

let foo = {
  name: "",
  bar() {
    return "bar";
  },
  method: function() {

  }
};
console.log(foo.bar());

이론적으로는 bar함수를에 직접 넣는 것이 가능 method하지만 매우 이상 할 것입니다.

let foo = {
  name: "",
  method: function() {

  }
};
foo.method.bar = function() {
  return "bar";
};
console.log(foo.method.bar());

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관