Im vorherigen Artikel haben wir gelernt, wie man die Position von Elementen umkehrt, siehe „So kehren Sie die Position von Elementen in Javascript um“. Dieses Mal lernen wir die Methode zum Festlegen der Array-Länge kennen. Sie können bei Bedarf darauf zurückgreifen.
Wir wussten schon viel über JavaScript-Arrays, aber wir schienen das Längenattribut nicht im Detail erwähnt zu haben.
Schauen wir uns zunächst ein kleines Beispiel an.
<script> var arr = new Array(3); arr[0] = "one"; arr[1] = "two"; arr[2] = "three"; console.log(arr.length); var nums=new Array(6); nums[0] = "one"; nums[1] = "two"; nums[2] = "three"; console.log(nums.length); var nums=new Array(2); nums[0] = "one"; nums[1] = "two"; nums[2] = "three"; console.log(nums.length); </script>
Das Ergebnis dieses kleinen Beispiels ist
Wir können sehen, dass das Ergebnis dieses kleinen Beispiels 3
, 6
, 3, aber liegt das an der Array-Länge, die wir bei der Erstellung angegeben haben? Werfen wir einen Blick auf den Code, den wir für den ersten Code angegeben haben. Die Länge des Arrays beträgt also überhaupt drei. Für den zweiten Code ist die angegebene Länge jedoch 6 Das Array ist 6. Gibt es überhaupt kein Problem? Für dieses dritte Array beträgt die angegebene Länge offensichtlich 2. Warum beträgt die Länge dieses Arrays drei? <code>3
,6
,3
,但这是因为我们创建的时候给其指定的数组长度的原因吗?去看看代码,第一个我们给其指定的长度是三,所以这个数组的长度是三完全没有问题;但是第二个明明给其指定的长度是6,这个数组的长度是6,完全没有问题?这第三个,明明给其指定的长度是2,为什么这个数组的长度是三呢?
带着这些疑问我们去看看length这个属性吧。
length属性可设置或返回数组中元素的数目。这个我们也都知道,但是这个介绍好像没有办法说明啊,别急,我们再来看看。
JavaScript数组的length属性和其数字下标之间有着紧密的联系。需要使用一个合法的下标为数组元素赋值,并且该下标超出了当前数组的大小的时候,解释器会同时修改length的值。
所以我们看这个例子,第二个虽然没有定义六个元素,但是我们给数组定义了长度,所以这个数组的长度就是我们定义的长度;来看看第三个,虽说我们给其定义了长度,但是很明显,我们定义的长度不能容纳我们所定义的元素,所以解释器就直接帮我们把length
length
direkt für uns geändert. 🎜🎜Das ist es. Wenn Sie es brauchen, können Sie lesen: 🎜Javascript Advanced Tutorial🎜🎜Das obige ist der detaillierte Inhalt vonSo legen Sie die Array-Länge in Javascript fest. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!