Apa perbedaan antara masing-masing definisi larik berikut.
var myArray = [];
var myArray = {};
var myArray = new Array();
javascript
arrays
Kelingking
sumber
sumber
myObject["someValue"]
ataumyObject.someValue
. Objek kosong yang dibuat oleh{}
tentu saja tidak akan memiliki properti tersebut, tetapi Anda dapat menetapkannya dengan cara yang sama:myObject.someValue = "hello!"
var a = new Array(5)
danvar b = [5]
, makaa
≠b
(karenaa.length
= 5 sementarab.length
= 1,a[0]
adalahundefined
saatb[0]
5, dan seterusnya.)var a;
danvar a = {};
sama?var myObject = {};
setara dengan varmyObject = new Object();
Jadi, contoh kedua bukanlah seorang
Array
melainkan seorang jenderalObject
.Ini bisa membingungkan seperti
Array
kelas danObject
kelas - lebih tepatnyaArray
adalah sub-kelasObject
. Jadi, pada umumnya,Object
semantik berlaku untukArray
:sumber
o['property1'] = 'property value'
, Anda sebenarnya tidak menambahkan elemen ke array, tetapi menyetel properti objek array . Bingung? Saya bilang ya;) Dalam JavaScript, pada dasarnya semuanya adalah objek. Objek lain, sepertiArray
,,RegExp
... memperluas objek dasar dengan fungsionalitas lebih lanjut. Objek polos dan kosong dibuat dengan tanda kurung kurawalplain_obj = {}
.