Es6-arrays
ES6-配列
変数を使用して値を保存するには、次の制限があります-
- 変数は本質的にスカラーです。 つまり、変数宣言には一度に1つの変数宣言しか含めることができません。 つまり、プログラムにn個の値を格納するには、n個の変数宣言が必要になります。 したがって、値のより大きなコレクションを格納する必要がある場合、変数の使用は実行できません。
- プログラム内の変数には、ランダムな順序でメモリが割り当てられるため、宣言の順序で値を取得または読み取ることが難しくなります。
JavaScriptは、これに取り組むために配列の概念を導入しています。
配列は、値の同種のコレクションです。 簡単にするために、配列は同じデータ型の値のコレクションです。 これはユーザー定義型です。
配列の機能
- 配列宣言は、シーケンシャルメモリブロックを割り当てます。
- 配列は静的です。 これは、一度初期化された配列のサイズを変更できないことを意味します。
- 各メモリブロックは配列要素を表します。
- 配列要素は、要素の添え字/インデックスと呼ばれる一意の整数によって識別されます。
- 変数などの配列も、使用する前に宣言する必要があります。
- 配列の初期化とは、配列要素にデータを設定することです。
- 配列要素の値は更新または変更できますが、削除することはできません。
配列の宣言と初期化
JavaScriptで配列を宣言して初期化するには、次の構文を使用します-
var array_name;//declaration
array_name = [val1,val2,valn..] //initialization
OR
var array_name = [val1,val2…valn]
注-[]のペアは、配列の次元と呼ばれます。
たとえば、次のような宣言: var numlist = [2,4,6,8] は、次の図に示すように配列を作成します。
配列要素へのアクセス
添え字が後に続く配列名は、配列要素を参照するために使用されます。
以下は同じ構文です。
array_name[subscript]
例:単純な配列
var alphas;
alphas = ["1","2","3","4"]
console.log(alphas[0]);
console.log(alphas[1]);
上記のコードが正常に実行されると、次の出力が表示されます。
1
2
例:単一ステートメントの宣言と初期化
var nums = [1,2,3,3]
console.log(nums[0]);
console.log(nums[1]);
console.log(nums[2]);
console.log(nums[3]);
上記のコードが正常に実行されると、次の出力が表示されます。
1
2
3
3
配列オブジェクト
Arrayオブジェクトを使用して配列を作成することもできます。 配列コンストラクターとして渡すことができます-
- 配列のサイズを表す数値または。 *コンマ区切り値のリスト。
次の例では、このメソッドを使用して配列を作成します。
例
var arr_names = new Array(4)
for(var i = 0;i<arr_names.length;i++) {
arr_names[i] = i* 2
console.log(arr_names[i])
}
上記のコードが正常に実行されると、次の出力が表示されます。
0
2
4
6
例:配列コンストラクターはコンマ区切り値を受け入れます
var names = new Array("Mary","Tom","Jack","Jill")
for(var i = 0;i<names.length;i++) {
console.log(names[i])
}
上記のコードが正常に実行されると、次の出力が表示されます。
Mary
Tom
Jack
Jill
配列メソッド
以下は、Arrayオブジェクトのメソッドとその説明のリストです。
Sr.No | Method & Description |
---|---|
1 |
この配列を他の配列や値と結合した新しい配列を返します |
2 |
この配列のすべての要素が提供されたテスト関数を満たす場合、trueを返します。 |
3 |
指定されたフィルタリング関数がtrueを返すこの配列のすべての要素を使用して、新しい配列を作成します。 |
4 |
配列内の各要素に対して関数を呼び出します。 |
5 |
指定された値に等しい配列内の要素の最初の(最小の)インデックスを返します。見つからない場合は-1を返します。 |
6 |
配列のすべての要素を文字列に結合します。 |
7 |
指定された値に等しい配列内の要素の最後の(最大の)インデックスを返します。見つからない場合は-1を返します。 |
8 |
この配列のすべての要素で提供された関数を呼び出した結果で新しい配列を作成します。 |
9 |
配列から最後の要素を削除し、その要素を返します。 |
10 |
配列の最後に1つ以上の要素を追加し、配列の新しい長さを返します。 |
11 |
配列の2つの値(左から右)に対して関数を同時に適用して、単一の値に減らします。 |
12 |
配列の2つの値に対して(右から左に)関数を同時に適用して、単一の値に減らします。 |
13 |
配列の要素の順序を逆にします-最初が最後になり、最後が最初になります。 |
14 |
配列から最初の要素を削除し、その要素のスライスを返します。 |
15 |
配列のセクションを抽出し、新しい配列を返します。 |
16 |
この配列の少なくとも1つの要素が提供されたテスト関数を満たす場合、trueを返します。 |
17 |
toSource() オブジェクトのソースコードを表します。 |
18 |
配列の要素を並べ替えます。 |
19 |
配列に要素を追加または削除します。 |
20 |
配列とその要素を表す文字列を返します。 |
21 |
配列の前に1つ以上の要素を追加し、配列の新しい長さを返します。 |
ES6-配列メソッド
以下は、ES6で導入された新しい配列メソッドです。
Array.prototype.find
*find* を使用すると、配列を反復処理して、指定されたコールバック関数がtrueを返す最初の要素を取得できます。 要素が見つかると、関数はすぐに戻ります。 特定の条件に一致する最初のアイテムだけを取得する効率的な方法です。
例
var numbers = [1, 2, 3];
var oddNumber = numbers.find((x) => x % 2 == 1);
console.log(oddNumber);//1
上記のコードが正常に実行されると、次の出力が表示されます。
1
注意-ES5 * filter()*とES6 * find()*は同義ではありません。 Filterは常に一致の配列を返し(複数の一致を返す)、findは常に実際の要素を返します。
Array.prototype.findIndex
*findIndex* はfindと同様に動作しますが、一致した要素を返す代わりに、その要素のインデックスを返します。
var numbers = [1, 2, 3];
var oddNumber = numbers.findIndex((x) => x % 2 == 1);
console.log(oddNumber);//0
上記の例は、値1(0)のインデックスを出力として返します。
Array.prototype.entries
*entries* は、配列のキーと値をループするために使用できる配列イテレータを返す関数です。 エントリは配列の配列を返します。各子配列は[index、value]の配列です。
var numbers = [1, 2, 3];
var val = numbers.entries();
console.log(val.next().value);
console.log(val.next().value);
console.log(val.next().value);
上記のコードが正常に実行されると、次の出力が表示されます。
[0,1]
[1.2]
[2,3]
または、スプレッド演算子を使用して、エントリの配列を一度に取得することもできます。
var numbers = [1, 2, 3];
var val= numbers.entries();
console.log([...val]);
上記のコードが正常に実行されると、次の出力が表示されます。
[[Array.from
*Array.from()* enables the creation of a new array from an array like object. The basic functionality of Array.from() is to convert two kinds of values to Arrays −
* Array-like values.
* Iterable values like Set and Map.
*Example*
[source,prettyprint,notranslate,tryit]
(Array.from( 'hello')のiを許可){console.log(i)}に「strictを使用」
The following output is displayed on successful execution of the above code.
[source,result,notranslate]
こんにちは
Array.prototype.keys()
This function returns the array indexes.
Example
console.log(Array.from(['a'、 'b']。keys()))
The following output is displayed on successful execution of the above code.
[ 0, 1 ]
Array Traversal using for…in loop
One can use the for… in loop to traverse through an array.
「厳密な使用」var nums = [1001,1002,1003,1004] for(let j in nums){console.log(nums [j])}
The loop performs an index-based array traversal. The following output is displayed on successful execution of the above code.
1001 1002 1003 1004
Arrays in JavaScript
JavaScript supports the following concepts about Arrays −
Sr.No | Concept & Description |
---|---|
1 |
JavaScript supports multidimensional arrays. The simplest form of the multidimensional array is the two-dimensional array |
2 |
You can pass to the function a pointer to an array by specifying the array’s name without an index. |
3 |
Allows a function to return an array. |
Array De-structuring
JavaScript supports de-structuring in the context of an array.
Example
var arr = [12,13] var [x、y] = arr console.log(x)console.log(y)
The following output is displayed on successful execution of the above code.
12 13