왜 이것이 좋지 않은가요?왜 xxx는 함수가 아닙니다.
aContract = function(){};
aContract.prototype = {
someFunction: function() {
alert('yo');
},
someOtherFunction: some$Other$Function
};
var some$Other$Function = function() {
alert('Yo yo yo');
};
var c = new aContract();
c.someFunction();
c.someOtherFunction();
방화범이 c.someOtherFunction 함수
아니다 그러나 이것은 잘 작동 말한다
aContract = function(){};
aContract.prototype = {
someFunction: function() {
alert('yo');
},
someOtherFunction: some$Other$Function
};
function some$Other$Function() {
alert('Yo yo yo');
};
var c = new aContract();
c.someFunction();
c.someOtherFunction();
내가 무슨 말이냐 ??? 나는 일반적으로 잘 작동하는 첫 번째 방법을 사용하여 자바 스크립트에서 코드를 선호하지만 프로토 타입을 만들 때 제대로 작동하지 않는 것 같습니다. 당신이 실제로 some$Other$Function
를 만들기 전에 샌디 Eggo
. blah()를 호출하면 "정의되지 않음"이 표시됩니다. function blah() { alert (x); var x = 5; } –
그게 무슨 일 이니? 예. (function() {var a = x + 1; var x = 2; return a;})()는 NaN을 반환합니다. (function() {var a = function() {return x + 1}; var x = 2; return a()})() 이는 3을 반환합니다. – BaroqueBobcat