자바 스크립트를 심각하게 시작합니다. 아래 코드에 어떤 문제가 있습니까?모듈 패턴이 정의되지 않았습니다. 변수
var Person = (function(name,age){
var name = name, age = age;
var print = function(){
console.log('I"m '+name+', and I"m '+age+' year old');
}
return {print:print}
})();
Person.print("James",19);
나는 이름과 나이가 정의되지 않았습니다. 나는이 패턴도 발견했다. 결국 많은 방법을 찾으면 결국 귀하의 수익은
return {methodA:methodA, methodB:methodB, methodC:methodC}
입니다. 이것은 저에게 너무 추합니다. 당신이 당신의 방법에 인수를 전달하려면 그냥
return{
methodA: function(){
}
};
문제가 아니라 변수
를 공유 만들지 만,주의가 그 라인'VAR 이름 = 이름, 나이 = 나이;'는 행동에 변화없이 제거 될 수 있습니다 - 함수 인자는 이미 클로즈의 일부입니다 따라서 로컬 변수에 복사 할 필요가 없으며 함수 인수와 같은 이름의 로컬 변수를 만들려고해도 아무 것도하지 않습니다. – nnnnnn