हटाना एक गैर वास्तविक दुनिया स्थिति की तरह काम करती है, यह सिर्फ निकाल देता है आइटम, लेकिन सरणी लंबाई रहता है एक ही:
नोड टर्मिनल से उदाहरण:
> var arr = ["a","b","c","d"];
> delete arr[2]
true
> arr
[ 'a', 'b', , 'd', 'e' ]
अनुक्रमणिका द्वारा किसी सरणी के किसी आइटम को निकालने के लिए यहां एक फ़ंक्शन है, स्लाइस () का उपयोग करते हुए , यह गिरफ्तारी को पहले आर्ग के रूप में लेता है, और जिस सदस्य को आप दूसरे तर्क के रूप में हटाना चाहते हैं। जैसा कि आप देख सकते हैं, यह वास्तव में सरणी के सदस्य को हटा देता है, और सरणी की लंबाई 1 से कम कर देगा
function(arr,arrIndex){
return arr.slice(0,arrIndex).concat(arr.slice(arrIndex + 1));
}
ऊपर क्या कार्य करता है, सभी सदस्यों को सूचकांक तक ले जाता है, और सभी सदस्यों को सूचकांक के बाद, और उन्हें एक साथ मिलाता है, और परिणाम देता है।
एक नोड मॉड्यूल के रूप में उपरोक्त फ़ंक्शन का उपयोग करके यहां एक उदाहरण दिया गया है, टर्मिनल को देखना उपयोगी होगा:
> var arr = ["a","b","c","d"]
> arr
[ 'a', 'b', 'c', 'd' ]
> arr.length
4
> var arrayRemoveIndex = require("./lib/array_remove_index");
> var newArray = arrayRemoveIndex(arr,arr.indexOf('c'))
> newArray
[ 'a', 'b', 'd' ] // c ya later
> newArray.length
3
कृपया ध्यान दें कि यह इसमें किसी एक सरणी के साथ काम नहीं करेगा, क्योंकि indexOf ("c") को केवल पहला रोशन मिलेगा, और केवल अलग हो जाएगा और पहले "c" को हटा देगा।
.splice
: लूप में, इस सवाल पर एक नजर है जावास्क्रिप्ट में सरणी से हटाएं ।