window.name
विंडो का नाम सेट करने के लिए उपयोग किया जाता है, और चूंकि विंडो का नाम केवल एक स्ट्रिंग हो सकता है, तो आप window.name
पर सेट की गई किसी भी स्ट्रिंग में परिवर्तित हो जाते हैं। और प्राचीन मूल्यों के रूप में तार, गुण नहीं हो सकता है। समाधान एक अलग चर नाम या एक अलग दायरे का उपयोग करना है।
वैकल्पिक रूप से, आप window.name
का उपयोग कर सकते हैं जैसा कि आपको लगता है कि आपके पास पहले यह कोड है या नहीं। मैं तो बस अवधारणा के प्रमाण के रूप में सभी इस की सिफारिश नहीं है, लेकिन,:
(function() {
var _name;
window.__defineGetter__('name', function() {
return _name;
});
window.__defineSetter__('name', function (v) {
_name = v;
});
})();
साथ ही, आपको new Object
के स्थान पर {}
उपयोग करना चाहिए। अधिक संक्षिप्त होने के अलावा, यह भी अधिक कुशल और अधिक स्पष्ट है।
स्रोत
2012-05-09 21:05:44
'language' विशेषता हटाई गई है, केवल' type' विशेषता का उपयोग । 'अलर्ट' के बजाय' console.log' का उपयोग करना और क्रोम देव का उपयोग करना बेहतर है। टूल्स (या फायरबग) उन्हें पढ़ने के लिए। और फिनली आपको अपने कोड के लाइन 1 पर एक डॉक्टरेट करने की आवश्यकता है, एक डॉक्टरेट है: '' –
AFAIK भी 'var name = {}' वाक्यविन्यास का उपयोग करना अधिक आम है। – Hamish
यह सिर्फ टाइपो था ... मैंने 'ऑब्जेक्ट' ऑब्जेक्ट दर्ज नहीं किया। यह अभी भी क्रोम में त्रुटि फेंकता है। क्रोम में नया कोड आज़माएं। –