저는 전에 사용했던 다른 사람들이 작성한 스크립트를 해부하여 자바 스크립트를 배우고 있습니다 (stackoverflow는 이것에 필수적입니다!). 이 코드는 (코드를 읽기 쉽도록 중간에서 많이 잘라 냈고, 모든 주석은 내 것이 었습니다.) fullCalendar.js, jquery 플러그인에서 왔습니다.변수에 함수를 할당하고 자바 스크립트에서 함수 (?)에 변수를 할당합니다.
나는 저자가 여기서 무엇을하고 있는지 확실하지 않다 :
이function EventManager(options, _sources) { //called using .call()
var t = this;
t.isFetchNeeded = isFetchNeeded; //?? assign the function "isFetchNeeded" to the variable (not the value returned by the function)??
var trigger = t.trigger; //?? namespace??
}
function View(element, calendar, viewName) {
var t = this;
function trigger(name, thisObj) {
return calendar.trigger.apply(
calendar,
[name, thisObj || t].concat(Array.prototype.slice.call(arguments, 2), [t])
);
}
}
첫째, 내 생각 엔이 this.foo=bar
가 현재 Object (안 내 "isFetchNeeded"라는 변수에 함수 "바"할당된다는 점이다 그러나 왜 당신이 이것을 할 것인지, 속도?).
두 번째로, var foo=this.bar
줄에는 저를 괴롭 히고 있습니다. 네임 스페이스 마법처럼 보입니다.
첫 번째 줄에 대해 생각해보십시오. 그리고 다음 라인은 무엇입니까?
감사
정직하게 말하자면, 좋은 자바 스크립트 입문서가 필요합니다. Spencer Tippings의 Javascript를 10 분 안에 권합니다. –
자바 스크립트에는 "네임 스페이스"가 없으며 개체 속성 만 있습니다. 그리고 변수를 변수와 구별해야합니다. – Bergi
@Bergi : 당신 말이 맞아요. 나는 "범위"를 생각하고 있었지만 "네임 스페이스"를 썼습니다. – amosglenn