क्या जावास्क्रिप्ट में एक सरणी सूची है?


92

मेरे पास उन चीजों का एक गुच्छा है, जिन्हें मैं एक सरणी में जोड़ना चाहता हूं, और मुझे नहीं पता कि सरणी का आकार पहले से क्या होगा। क्या मैं जावास्क्रिप्ट में सी # सरणी सूची के समान कुछ कर सकता हूं, और उस myArray.Add(object);पर बार-बार कर सकता हूं ?

जवाबों:


145

बस array.push () का उपयोग करें;

var array = [];


array.push(value);

इससे इसमें एक और आइटम जुड़ जाएगा।

एक बंद लेने के लिए, का उपयोग करें array.pop();

जावास्क्रिप्ट सरणियों के लिए लिंक: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array


यह लिंक अब नहीं उपलब्ध है।
— sababab

के रूप में आप जितने चाहें, उतने डेटा जोड़ सकते हैं एक सरणी में - arr.push (element1 [, ... [, elementN]]) - developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/...
— कार्लज़ोव

51

जावास्क्रिप्ट में कोई ArrayList नहीं है।

हालांकि ArrayECMA 5.1 है जो एक "ArrayList" के समान कार्यक्षमता है। इस उत्तर का अधिकांश हिस्सा एक्मा -262 संस्करण 5.1 के HTML प्रतिपादन, ईसीएमएस्क्रिप्ट भाषा विनिर्देश से शब्दशः लिया गया है ।

परिभाषित सरणियों में निम्नलिखित विधियाँ उपलब्ध हैं:

  • .toString ( )
  • .toLocaleString ( )
  • .concat ( [ item1 [ , item2 [ , … ] ] ] )
    जब कॉनैट विधि शून्य या अधिक तर्कों वाले आइटम 1, आइटम 2, आदि के साथ कहा जाता है, तो यह एक सरणी देता है जिसमें ऑब्जेक्ट के सरणी तत्व होते हैं और क्रम में प्रत्येक तर्क के सरणी तत्व होते हैं।
  • .join (separator)
    सरणी के तत्वों को स्ट्रिंग्स में परिवर्तित किया जाता है, और इन स्ट्रिंग्स को फिर से अलग किया जाता है, विभाजक की घटनाओं द्वारा अलग किया जाता है। यदि कोई विभाजक प्रदान नहीं किया जाता है, तो विभाजक के रूप में एक एकल अल्पविराम का उपयोग किया जाता है।
  • .pop ( )
    सरणी का अंतिम तत्व सरणी से निकाल दिया जाता है और वापस आ जाता है।
  • .push ( [ item1 [ , item2 [ , … ] ] ] )
    तर्कों को सरणी के अंत में जोड़ा जाता है, जिस क्रम में वे दिखाई देते हैं। सरणी की नई लंबाई कॉल के परिणाम के रूप में वापस आ गई है। "
  • .reverse ( )
    सरणी के तत्वों को फिर से व्यवस्थित किया जाता है ताकि उनके क्रम को उलट दिया जा सके। कॉल के परिणाम के रूप में ऑब्जेक्ट वापस आ गया है।
  • .shift ( )
    सरणी का पहला तत्व सरणी से हटा दिया गया है और वापस आ गया है। "
  • .slice (start, end)
    स्लाइस विधि दो तर्कों को लेती है, शुरू और समाप्त होती है, और एक सरणी देता है जिसमें तत्व से सरणी के तत्व होते हैं जो शुरू होते हैं, लेकिन शामिल नहीं हैं, तत्व अंत (या सरणी के अंत के माध्यम से यदि अपरिभाषित है)।
  • .sort (comparefn)
    इस सरणी के तत्वों को क्रमबद्ध किया गया है। सॉर्ट आवश्यक रूप से स्थिर नहीं है (अर्थात, समान तुलना करने वाले तत्व आवश्यक रूप से अपने मूल क्रम में नहीं रहते हैं)। यदि तुलनात्मकता अपरिभाषित नहीं है, तो यह एक ऐसा कार्य होना चाहिए जो दो तर्कों x और y को स्वीकार करता है और यदि x <y, शून्य यदि x = y, या एक सकारात्मक मान, तो x> y, एक नकारात्मक मान लौटाता है।
  • .splice (start, deleteCount [ , item1 [ , item2 [ , … ] ] ] )
    जब ब्याह विधि को दो या अधिक तर्कों के साथ शुरू किया जाता है, तो हटाएं (हटाएं) (वैकल्पिक रूप से) आइटम 1, आइटम 2, इत्यादि, सरणी सूचकांक शुरू होने वाले सरणी के डिलीट तत्वों को तर्क आइटम 1, आइटम 2, आदि द्वारा प्रतिस्थापित किया जाता है। एक ऐरे ऑब्जेक्ट हटाए गए तत्वों (यदि कोई हो) से युक्त है।
  • .unshift ( [ item1 [ , item2 [ , … ] ] ] )
    तर्कों को सरणी के शुरू होने से पूर्व निर्धारित किया जाता है, जैसे कि सरणी के भीतर उनका क्रम वही है जिस क्रम में वे तर्क सूची में दिखाई देते हैं।
  • .indexOf ( searchElement [ , fromIndex ] )
    indexOf सरणी के तत्वों के लिए खोज की तुलना, आरोही क्रम में, आंतरिक सख्त समानता तुलना एल्गोरिथ्म (11.9.6) का उपयोग करके करता है, और यदि एक या अधिक पदों पर पाया जाता है, तो पहली ऐसी स्थिति का सूचकांक लौटाता है; अन्यथा, -1 लौटा है।
  • .lastIndexOf ( searchElement [ , fromIndex ] )
    lastIndexOf आंतरिक सख्त समानता तुलना एल्गोरिथ्म (11.9.6) का उपयोग करके अवरोही क्रम में सरणी के तत्वों के लिए खोज की तुलना करता है, और यदि एक या अधिक पदों पर पाया जाता है, तो अंतिम ऐसी स्थिति के सूचकांक को लौटाता है; अन्यथा, -1 लौटा है।
  • .every ( callbackfn [ , thisArg ] )
    कॉलबैकफ़न एक ऐसा फ़ंक्शन होना चाहिए जो तीन तर्कों को स्वीकार करता है और एक मूल्य देता है जो बूलियन मूल्य के लिए सही या गलत है। आरोही क्रम में मौजूद प्रत्येक तत्व के लिए हर बार कॉलबैकफ़न कॉल करता है, जब तक कि यह एक ऐसा स्थान नहीं मिल जाता है जहां कॉलबैकफ़न झूठे रिटर्न देता है। यदि ऐसा कोई तत्व पाया जाता है, तो हर तुरंत गलत है। अन्यथा, यदि कॉलबैकफ़न सभी तत्वों के लिए सही लौटा है, तो प्रत्येक सही वापस आ जाएगा।
  • .some ( callbackfn [ , thisArg ] )
    कॉलबैकफ़न एक ऐसा फ़ंक्शन होना चाहिए जो तीन तर्कों को स्वीकार करता है और एक मूल्य देता है जो बूलियन मूल्य के लिए सही या गलत है। आरोही क्रम में मौजूद प्रत्येक तत्व के लिए कुछ कॉलबैकबैक एक बार, आरोही क्रम में, जब तक कि वह एक ऐसा स्थान नहीं मिल जाता है, जहां कॉलबैक सही रहता है। यदि ऐसा तत्व पाया जाता है, तो कुछ तुरंत सही हो जाता है। अन्यथा, कुछ गलत है।
  • .forEach ( callbackfn [ , thisArg ] )
    कॉलबैकफ़न एक फ़ंक्शन होना चाहिए जो तीन तर्कों को स्वीकार करता है। forcach आरोही क्रम में सरणी में मौजूद प्रत्येक तत्व के लिए एक बार कॉलबैकफ़न कहता है।
  • .map ( callbackfn [ , thisArg ] )
    कॉलबैकफ़न एक फ़ंक्शन होना चाहिए जो तीन तर्कों को स्वीकार करता है। नक्शा आरोही क्रम में प्रत्येक तत्व के लिए एक बार कॉलबैकफ़न कहता है, और परिणामों से एक नया एरे का निर्माण करता है।
  • .filter ( callbackfn [ , thisArg ] )
    कॉलबैकफ़न एक ऐसा फ़ंक्शन होना चाहिए जो तीन तर्कों को स्वीकार करता है और एक मूल्य देता है जो बूलियन मूल्य के लिए सही या गलत है। फ़िल्टर आरोही क्रम में प्रत्येक तत्व के लिए एक बार कॉलबैकफ़न कॉल करता है, और सभी मूल्यों की एक नई सरणी का निर्माण करता है, जिसके लिए कॉलबैकफ़न सच होता है।
  • .reduce ( callbackfn [ , initialValue ] )
    कॉलबैकफ़न एक फ़ंक्शन होना चाहिए जो चार तर्क लेता है। कॉलबैक को कम करें, एक फ़ंक्शन के रूप में, एक बार सरणी में मौजूद प्रत्येक तत्व के लिए, आरोही क्रम में।
  • .reduceRight ( callbackfn [ , initialValue ] )
    कॉलबैकफ़न एक फ़ंक्शन होना चाहिए जो चार तर्क लेता है। घटता कॉल कॉलबैक, एक फ़ंक्शन के रूप में, एक बार सरणी में मौजूद प्रत्येक तत्व के लिए, अवरोही क्रम में।

और लंबाई संपत्ति भी ।


22

जावास्क्रिप्ट के साथ सभी सरणियाँ लचीली हैं। आप बस निम्नलिखित की तरह कुछ कर सकते हैं:

var myArray = [];

myArray.push(object);
myArray.push(anotherObject);
// ...

मैं तुमसे प्यार करता हूँ, भले ही मैं तुम्हें सच में नहीं जानता।
— sababab

14

JS में एरर्स काफी लचीले होते हैं, आप कर सकते हैं:

var myArray = new Array();
myArray.push("string 1");
myArray.push("string 2");

आप आसानी से एक विशिष्ट तत्व को नहीं हटा सकते हैं
— जैकब सांचेज़

7

आपको पुश की भी आवश्यकता नहीं है, आप कुछ इस तरह से कर सकते हैं -

var A=[10,20,30,40];

A[A.length]=50;

5

जावास्क्रिप्ट गतिशील सरणियों का उपयोग करता है, पहले से आकार घोषित करने की कोई आवश्यकता नहीं है

आप जितनी बार चाहें उतनी बार पुश और शिफ्ट कर सकते हैं, जावास्क्रिप्ट आपके लिए आवंटन और सामान को संभालेंगे


3

जावा स्क्रिप्ट में आप नीचे के रूप में सरणी घोषित करते हैं:

var array=[];
array.push();

और सरणी या वस्तु या सरणी के लिए आपको json का उपयोग करना होगा; और निम्नलिखित कोड का उपयोग करके json का उपयोग करके इसे सीरियल करें:

 var serializedMyObj = JSON.stringify(myObj);

हे अतिरिक्त जानकारी प्रदान करने के लिए धन्यवाद। उस जसन क्रमांकन ने वास्तव में मदद की
— प्रकाश

1

जावास्क्रिप्ट ऐरे push()विधि का प्रयोग करें , यह दी गई वस्तु को एरे के अंत में जोड़ता है। JS Arrays काफी लचीली हैं, आप अपनी लंबाई को पहले से निर्दिष्ट किए बिना एक सरणी में जितनी चाहें उतनी वस्तुओं को धकेल सकते हैं। साथ ही, विभिन्न प्रकार की वस्तुओं को एक ही एरे में धकेला जा सकता है।


0

बस उपयोग करें array.push(something);। जावास्क्रिप्ट सरणियाँ इस संबंध में ArrayLists की तरह हैं - उनके साथ ऐसा व्यवहार किया जा सकता है जैसे कि उनकी लचीली लंबाई (जावा सरणियों के विपरीत) हो।


0

यह कोशिश करो, शायद मदद कर सकता है, यह वही करें जो आप चाहते हैं:

ListArray

var listArray = new ListArray();
let element = {name: 'Edy', age: 27, country: "Brazil"};
let element2 = {name: 'Marcus', age: 27, country: "Brazil"};
listArray.push(element);
listArray.push(element2);

console.log(listArray.array)
<script src="https://marcusvi200.github.io/list-array/script/ListArray.js"></script>

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.