JavaScript配列の長さ


この記事はもともと公開されたwebinuse.com
JavaScript Array Lengthプロパティは、配列で動作するたびに使用するものです.しかし、しばしば、我々はこのプロパティは本当に強力なことを忘れる.

JavaScriptの配列長プロパティとは
配列セットのインスタンスであるオブジェクトのレングスプロパティまたはその配列の要素数を返します.値は符号付き32ビット整数であり、配列内の最も高いインデックスよりも常に数値的に大きいMDN .
これはどういう意味ですか.つまり、lengthプロパティはdata type 要素の数を返したり、要素数を設定したりする.配列インデックスがゼロに基づいているので、lengthによって返される整数は1で最も高いインデックスより大きくなければなりません.

高密度で疎な配列
JavaScriptには2種類の配列があります.JavaScript Array Lengthプロパティは、これらの2つの型に対して異なる結果を与えます.したがって、長さが1で最も高いインデックスより大きくなければならないと、我々は言いました.これは時々.length プロパティは、実際には正確な要素数を返しませんが、インデックスは1となります.これを説明するために、高密度で疎な配列の違いを見なければなりません.

高密度アレイ
高密度配列は、通常、我々が通常動作する配列のタイプです.
const arr = ["Audi", "BMW", "Mercedes"];
これは、密な配列の典型的な例です.
JavaScript Array Lengthプロパティは、高密度配列になると、常に正確な要素数を返します.
const arr = ["Audi", "BMW", "Mercedes"];

let length = arr.length;

console.log(length);
// Result:
// 3

let highestIndex = arr.length-1;

console.log(highestIndex);
// Result:
//2
ご覧の通り..length 返される3 配列の項目数はどれですかarr . 最も高い指標は2 . 配列に要素を追加し、配列を空にし、インデックスと長さをチェックします.
let arr = ["Audi", "BMW", "Mercedes"];
/**
 * We know that arr.length === 3
 * Let's add an element to array
 * */
arr.push("Ferrari");

let length = arr.length;

console.log(arr.length);
// Result:
// 4

/**
 * In previous example highest index
 * was 2, let's check it now, after
 * we have added another element
 * */

console.log(arr.length-1);
// Result:
//3

//Let's empty our array
arr = [];
console.log(arr.length);
// Result:
// 0
配列を空にしたら、インデックスをチェックすることは意味がありません.

疎配列
「疎配列」とは基本的には穴のある配列です.つまり、疎な配列は必ずしも0から始まりません.また、疎な配列が順序の要素を持っていないことを意味します.要素の後に要素がないが、むしろ穴がある場合があります.いくつかの例を見てみましょう.
let arr = ["Audi", "BMW",, "Mercedes"];

let arr2 = [,,,,"JavaScript"];

let arr3 = []
arr3[50] = "Python";
最初の変数arr , インデックス2には3つの要素と“穴”/“空き領域”があります.番目の変数には4つの空インデックスがあり、5番目には"JavaScript" . arr3 変数は空の配列として作成されます.それから、我々は割り当てました"Python" インデックス50.これは、50の空の場所が前にあることを意味します"Python" , または49のインデックス.これらはすべて疎配列の例であった.さあ、JavaScript Array Lengthプロパティを使用して、どうなるかを見ましょう.
let arr = ["Audi", "BMW",, "Mercedes"];
console.log(arr);
//Result:
//(4) ['Audi', 'BMW', empty, 'Mercedes']

let arr2 = [,,,,"JavaScript"];
console.log(arr2);
//Result:
//(5) [empty × 4, 'JavaScript']

let arr3 = []
arr3[50] = "Python";
console.log(arr3);
//Result:
//(51) [empty × 50, 'Python']
上の例でわかるようにconsole.log() 長さより多くを返します.整数を期待していたとしても、整数プラス配列を得ました.これはブラウザがこれが疎な配列であることに気づいているからです.また、我々はどこに“穴”ブラウザを返したempty .

JavaScriptの配列長プロパティを使用して配列を操作する
JavaScript Array Lengthプロパティを使用すると、配列の長さを変更することができます.

配列を拡張する
JavaScript Array Lengthプロパティを使用して、配列を拡張するにはどうしますか?疎配列.以下が例です.
let arr = ["Audi", "BMW","Mercedes"];
console.log(arr.length);
//Result:
//3

arr.length = 5;
console.log(arr);
//Result:
//(5) ['Audi', 'BMW', 'Mercedes', empty × 2]
上の例では、標準の配列を使用し、.length を返す.その後、JavaScriptの配列長の配列を変異させ、配列の長さを5に設定しました.我々がログオンするときarr 再びそれを見た.arr は5の長さを持ち、その2つの空インデックスが最後に追加されます.それで、基本的に、我々はまばらな配列を得ました.

配列を短縮する
JavaScript Array Lengthプロパティは、配列を短縮する機能を提供します.使用するとき.length プロパティは、配列の最初から提供された要素の正確な数を受け取ります.残りの要素は捨てられ、配列は突然変異される.
let arr = ["Audi", "BMW","Mercedes"];
console.log(arr.length);
//Result:
//3

arr.length = 1;
console.log(arr);
//Result:
//['Audi']
配列を1要素に短縮し、最初の要素だけを保持します.残りは削除される.

配列を空にする
JavaScript配列の長さを使用して配列を空にすることができます.一度パス0 配列の長さとして、配列は空になります.
let arr = ["Audi", "BMW","Mercedes"];
console.log(arr.length);
//Result:
//3

arr.length = 0;
console.log(arr);
//Result:
//[]
コードスニペットから長さを設定するときに見ることができます0 , console.log() 空の配列を返します.
何か質問があれば何か私のものに私を見つけることができますかHow to create custom stackable toasts ?