के रूप में अगर मैंने किया जावास्क्रिप्ट
var myHash = new Array();
myHash['key1'] = { Name: 'Object 1' };
myHash['key2'] = { Name: 'Object 2' };
myHash['key3'] = { Name: 'Object 3' };
कैसे मैं key2
को दूर करते हैं, और object 2
हैश से देखते हुए में हैश से कुंजी + मूल्य निकालने का तरीका यह है कि यह समाप्त होता है एक राज्य में:
var myHash = new Array();
myHash['key1'] = { Name: 'Object 1' };
myHash['key3'] = { Name: 'Object 3' };
हटाएं जो मैं चाहता हूं उसे नहीं करता; इस
delete myHash['key2']
बस मुझे देता है:
var myHash = new Array();
myHash['key1'] = { Name: 'Object 1' };
myhash['key2'] = null;
myHash['key3'] = { Name: 'Object 3' };
केवल डॉक्स मैं पर पूर्णांक indexers, जो मुझे नहीं है साथ splice
और slice
सौदा मिल सकता है।
संपादित करें: मैं भी नहीं पता है कि 'कुंजी 2' जरूरी स्थिति में ठीक मामूली रेड हेरिंग है [1]
अद्यतन
हटाना सतह पर मैं क्या चाहते हो प्रतीत होता है,
[ { Name: 'Object 1' }, null, { Name: 'Object 3' } ]
: तथापि, json2.js का उपयोग कर सर्वर से वापस धकेलने के लिए json करने के लिए मेरे वस्तु stringify को,
के बाद Ive नष्ट कर दिया im, myHash के रूप में धारावाहिक रूप हो जाता है
क्या यह json2.js में एक बग है? या यह कुछ है जो मैं हटाने के साथ गलत कर रहा हूँ?
धन्यवाद
आप जो कर रहे हैं वह किसी ऑब्जेक्ट में गुण जोड़ रहा है, जो किसी सरणी/हैश में तत्व जोड़ने से अलग है। आप एक संपत्ति को कम करने के लिए एक रास्ता तलाश रहे हैं, कम या ज्यादा। जैसा कि अन्य टिप्पणियों में उल्लिखित है, myHash.key1 को हटाने का प्रयास करें। –
यदि यह हैशटेबल है, तो आपको 'var myHash = new Array()' के बजाय 'var myHash = new object() 'का उपयोग करना चाहिए। – cprcrack