어떻게 변수 이름을 던져서 클래스를 인스턴스화 할 수 있습니까?변수를 통해 클래스를 동적으로 인스턴스화
animate: function(el, build) {
console.log(build.effect);
var animationClass = new build.effect(el,build);
},
빌드 물건을 많이 포함하는 객체이지만, 가장 중요한 "효과" 클래스 내에서이 방법을 고려하십시오. 이 효과는 독립적 인 애니메이션 클래스의 이름입니다. "MarioKartMenu"라고합니다.
console.log (build.effect)는 "MarioKartMenu"를 출력합니다. 물론 얻을 수 있습니다 : TypeError : 표현식 'build.effect'의 결과 [MarioKartMenu]가 생성자가 아닙니다.
내가 동성을 쓰레기 단지와 같은 코드를 한 경우 :
animate: function(el, build) {
var animationClass = new MarioKartMenu(el,build);
},
그것은 잘 작동합니다. 내가하려고하는 것처럼 역동적으로 만들 수 있습니까? 기능 MarioKartMenu
가 글로벌 범위에서 정의 된 경우
완벽한, 나는 그것이 그것을 느끼는 것은 그런 일을 보일 것이다했다. 고맙습니다. –
js 클래스 안에 있으면 **'this [ "MarioKartMenu"]'**로 사용할 수 있습니다. 나는 잠시 동안 이것에 맞았고, 그것을 이해했다!! – IJas