मेरे पास var ar = [1, 2, 3, 4, 5]
है और कुछ फ़ंक्शन getSubarray(array, fromIndex, toIndex)
चाहते हैं, कॉल getSubarray(ar, 1, 3)
कॉल का परिणाम नया सरणी [2, 3, 4]
है।सरणी से सबएरे कैसे प्राप्त करें?
उत्तर
टुकड़ा का एक सरल उपयोग के लिए Array.slice()
var ar = [1, 2, 3, 4, 5];
var ar2 = ar.slice(1, 1 + 3);
print(ar2)
>>2,3,4
पर एक नजर डालें, सरणी क्लास को अपने एक्सटेंशन का उपयोग करें:
Array.prototype.subarray=function(start,end){
if(!end){ end=-1;}
return this.slice(start, this.length+1-(end*-1));
}
तब:
var bigArr=["a", "b", "c", "fd", "ze"]
Test1:
bigArr.subarray(1,-1)
< [ "बी", "सी", "fd", "Ze"]
Test2:
bigArr.subarray(2,-2)
< [ "सी", "fd"]
test3:
bigArr.subarray(2)
< [ "सी", "fd", "Ze"]
अन्य भाषा से आ रही (.ie: ग्रूवी) डेवलपर्स के लिए आसान हो सकता है
सवाल वास्तव में के लिए एक न्यू पूछ रहा है सरणी, इसलिए मेरा मानना है कि एक बेहतर समाधान एक क्लोन समारोह के साथ Abdennour TOUMI's answer गठबंधन करने के लिए होगा:
function clone(obj) {
if (null == obj || "object" != typeof obj) return obj;
var copy = obj.constructor();
for (var attr in obj) {
if (obj.hasOwnProperty(attr)) copy[attr] = obj[attr];
}
return copy;
}
[http://stackoverflow.com/questions/728360/most-elegant-way-to-clone-a-javascript-object]
clone()
समारोह के साथ
, अब आपको निम्न कर सकते हैं:
Array.prototype.subarray=function(start, end) {
if(!end){
end = this.length;
}
var newArray = clone(this);
return newArray.slice(start, end);
};
एक प्रतिलिपि के बिना आप अपनी मूल सरणी खो देंगे।
उदाहरण:
var array = [1,2,3,4,5];
console.log(array.subarray(2)); //print the subarray [3, 4, 5, subarray: function]
console.log(array); //print the original array [1, 2, 3, 4, 5, subarray: function]
मुझे नहीं लगता कि टुकड़ा मूल सरणी बदल जाएगा। – Mani
'Array.prototype.slice' पहले से ही एक प्रतिलिपि देता है। 'Array.prototype.splice' मूल सरणी को संशोधित करता है। –
स्लाइस() विधि एक सरणी के एक हिस्से की एक उथली प्रतिलिपि को एक नई सरणी वस्तु में लौटाती है। [मोज़िला डेवलपर नेटवर्क] देखें (https://developer.mozilla.org/en-S/docs/Web/JavaScript/Reference/Global_Objects/Array/slice)। Downvoted। – TheCrazyProgrammer
var array_one = [11, 22, 33, 44,55];
var ar2 = ar.slice(1, array_one.length-1);
console.log(array_2)
- 1. VALUE से सरणी कुंजी कैसे प्राप्त करें?
- 2. एक सहयोगी सरणी से मूल्यों की सरणी कैसे प्राप्त करें?
- 3. एंड्रॉइड पर संसाधनों से कुशलतापूर्वक लघु सरणी कैसे प्राप्त करें?
- 4. PHP से फ़ाइल में सरणी में पाठ कैसे प्राप्त करें
- 5. ट्विग में एक बहुआयामी सरणी से मूल्य कैसे प्राप्त करें?
- 6. शाब्दिक सरणी की लंबाई कैसे प्राप्त करें?
- 7. PHP $ _GET सरणी कैसे प्राप्त करें?
- 8. PHP में उप सरणी कैसे प्राप्त करें?
- 9. स्ट्रिंग सरणी की लंबाई कैसे प्राप्त करें?
- 10. सरणी से सीजीआरईटी प्राप्त करना
- 11. सी # में एक सबएरे संदर्भ बनाएं (असुरक्षित का उपयोग कर?)
- 12. हाइबरनेट क्वेरी से java.util.Map कैसे प्राप्त करें?
- 13. रेल 3 में दो आयामी सरणी की सरणी से रिकॉर्ड कैसे प्राप्त करें?
- 14. कैसे एक सरणी से
- 15. php सरणी से डेटा प्राप्त करें - AJAX - jQuery
- 16. अनजान चयनकर्ता को भेजा गया [एनएससीएफस्ट्रिंग सबएरे विथेंज:]
- 17. सभी तत्व प्राप्त करें लेकिन एक सरणी से पहले
- 18. बाइट सरणी से स्ट्रीम का नाम प्राप्त करें या स्ट्रीम
- 19. जावास्क्रिप्ट में सहयोगी सरणी से यादृच्छिक तत्व प्राप्त करें?
- 20. किसी फ़ंक्शन से सरणी कैसे वापस करें?
- 21. एक चार सरणी का हिस्सा प्राप्त करें
- 22. PHP: पाइथन में सरणी मान प्राप्त करें?
- 23. सी # प्रतिबिंब: सरणी मान और लंबाई कैसे प्राप्त करें?
- 24. डी समारोह में ... के सरणी के सरणी प्राप्त करें?
- 25. सिम्फनी में YAML से कार्रवाई करने के लिए एसोसिएटिव सरणी कैसे प्राप्त करें और उपयोग करें?
- 26. एक सहयोगी सरणी के माध्यम से लूप कैसे करें और कुंजी प्राप्त करें?
- 27. सरणी (MATLAB) की दर्पण छवि कैसे प्राप्त करें?
- 28. रूबी: न्यूनतम सरणी तत्व की अनुक्रमणिका कैसे प्राप्त करें?
- 29. PHP - किसी सरणी से अंतिम तत्व से पहले तत्व कैसे प्राप्त करें?
- 30. सी # में सभी enum मानों की सरणी कैसे प्राप्त करें?
आप [टुकड़ा] की कोशिश की है (http://www.w3schools.com/jsref/jsref_slice_array.asp)? –