जवाबों:
पहला और तीसरा समतुल्य हैं और एक नई सारणी बनाते हैं। दूसरा एक नई खाली वस्तु बनाता है, एक सरणी नहीं।
var myArray = []; //create a new array
var myArray = {}; //creates **a new empty object**
var myArray = new Array(); //create a new array
myObject["someValue"]या myObject.someValue। {}वसीयत द्वारा बनाई गई खाली वस्तु में निश्चित रूप से वे गुण नहीं होंगे, लेकिन आप उन्हें उसी तरह से असाइन कर सकते हैं:myObject.someValue = "hello!"
var a = new Array(5)और var b = [5], फिर a≠ b(के बाद से a.length= 5 जबकि b.length= 1, a[0]है undefined, जबकि b[0]पर 5 है, और इसलिए।)
var a;और var a = {};एक ही?
var myObject = {}; var के बराबर है myObject = new Object();
तो, दूसरा उदाहरण Arrayएक सामान्य नहीं है Object।
यह भ्रामक हो सकता है क्योंकि Arrayएक वर्ग है और Objectएक वर्ग है - अधिक सटीक Arrayएक उप-वर्ग है Object। इसलिए, बड़े और बड़े, Objectशब्दार्थ एक पर लागू होते हैं Array:
var o = [];
o.push('element1');
o.push('element2');
o['property1'] = 'property value'; // define a custom property.
console.log(o.property1);
console.log(o.length); // Outputs '2' as we've only push()'ed two elements onto the Array
o['property1'] = 'property value', आप वास्तव में सरणी में एक तत्व नहीं जोड़ रहे हैं, लेकिन सरणी ऑब्जेक्ट की एक संपत्ति सेट कर रहे हैं । उलझन में? मैंने आपको बताया;) जावास्क्रिप्ट में, मूल रूप से सब कुछ एक वस्तु है। अन्य ऑब्जेक्ट, जैसे Array, RegExp... मूल ऑब्जेक्ट को आगे की कार्यक्षमता के साथ विस्तारित करते हैं। एक सादा, खाली वस्तु को घुंघराले कोष्ठक के साथ बनाया जाता है plain_obj = {}।