javascript의 Object 프로토 타입에 네임 스페이스 메서드를 추가하려고합니다.개체 프로토 타입에 네임 스페이스 메서드 추가
var myObj = {}
myObj.namespace('nested.objects.are.created.if.not.present')
하지만 잃어버린 오전 : 내가 할 수 있도록하고 싶습니다 무엇
이있다. 제네릭 함수를 사용하는 것은 매우 쉬운 것처럼 보이지만 프로토 타입에 추가하는 것은 아닙니다. 여기
내가 무엇을 가지고 :
Object.prototype.namespace = function(ns_string) {
var parts = ns_string.split('.');
var parent = this;
var i;
var length = parts.length
for (i = 0; i < length; i++) {
// Create a property if it doesnt exist
if (typeof parent[parts[i]] === "undefined") {
parent[parts[i]] = {};
}
parent = parent[parts[i]];
}
}
그것은 부모의 값이 정확하게 각각의 시간을 설정하지 않은 것 같습니다. 나는 실종되었다는 것을 아주 기본적이라고 확신하지만, 그것이 무엇인지 확실하지 않습니다.
미리 감사드립니다. Onkelborg 말했듯이
리처드
방금 코드 (http://jsfiddle.net/TykH3/)를 사용해 보았지만 Object에 대한 프로토 타입을 수정하는 것이 좋지 않다고 생각합니다. – Onkelborg
[당신은 할 수 없습니다 jQuery를 사용하려면] (http://docs.jquery.com/Won't_Fix#Object.prototype_Issues)를 수행하십시오. – Esailija
@ByRichardPowell 누군가가 실제로 괜찮다고 말하면 오해했을 수도 있습니다. 참조가 있으십니까? – Esailija