나는 요즘 그 스크립트를 따라왔다. 그리고 많은 연구가 끝나고 난 여전히 대답을 찾을 수 없었다.Object.prototype을 사용하여 Object 생성자에 함수를 추가하려면 어떻게해야합니까?
그래서 여기에 내가 (원래는 아직이 없기 때문에, 예를 들어) (.length) 객체에 함수를 추가 (예를 들어) 원하는 문제, 나는 시도했다 :
Object.prototype.length = function() { /* Some fancy work */ }; //It works!
Object.prototype["width"] = function() { /* Some fancy work */ }; //It works!
/* But the following DOESN'T work */
Object.prototype = {
length: function() { /* Some fancy work */ },
width: function() { /* Some other fancy work */ }
};
마지막 하나가 작동하지 않습니다. 그게 바로 {} 객체를 사용하여 함수를 추가하는 가장 짧은 방법입니다. 이유가 없습니다. 나는 (예를 들어 jQuery 1.7.1에서) 그 코드를 보았습니다. 어떻게 동작하는지 알기 위해 노력했지만 저에게는 효과가 없습니다. jQuery가 사용하기 때문에 어떻게 든 작동해야한다고 생각합니다. 어떻게 보여 주시겠습니까?
a = {
b: "Something",
c: function() {}
}
그리고 다른 사람이 사용 :
a.prototype = {
b: "Something",
c: function() {}
}
그래서 차이점은 무엇입니까
나는 그 코드를 사용하여 많은 사람들을 본 적이? 이것은 어떻게 든 첫 번째 질문과 관련이 있으므로 완전히 이해하고 싶습니다. 당신이 내장 된 개체의 기능에만 두 가지 방법으로 전체를 대체하기 위해 노력하고 있기 때문에
SO의 각 게시물은 질문입니다. 한 번에 _ 질문을 쓰고 3을 하나로 묶지 마십시오. 9 개월 후에 이것을 알아야합니다! –
나는 세 번째 질문을 즉시 취할 것입니다. 상기시켜 주셔서 감사 드리며 죄송합니다. [x] – xx3004