ES 6配列追加の方法
12752 ワード
ES 6配列方法
1.JSON配列フォーマットからAray.from()を変換する方法:
2.Aray.of()方法:
テキストの山や変数を行列に変換するのに役立ちます.開発の中でよく似た配列の文字列を手に入れました.evalを使って変換する必要があります.evalの効率はとても低いです.それは私たちのプログラムを遅くします.この時に私達はAray.of方法を使うことができます.
例示的な方法とは、Arayオブジェクトで始まるのではなく、既に存在する配列が必要であり、その後に使用する方法のことである.これが例示的な方法である.ここのfind法は配列から検索される.find法では匿名関数を導入する必要があります.関数は三つのパラメータに入る必要があります. value:現在の検索値を表します. index:現在検索されている配列インデックスを表します. arr:現在の配列を表します.
fill()も例示的な方法であり、その役割は配列を充填することであり、3つのパラメータを受信することであり、最初のパラメータは充填変数であり、2番目は充填開始位置、3番目は充填位置である.
5.1 for…of arr.keys()の方法は、keyが を遍歴する価値があることである. arr.values()の方法は、valueの値に対するエルゴード である. arr.entries()の方法は、キーのペアに対するエルゴード である.
配列の内容と索引を同時に出力します.私たちはentries()という方法を使って、私たちのfor...ofサイクルに合わせてコンテンツと索引を同時に出力できます.
5.3 filter()方法(ES 5)
戻り値:サブセットを返します.
5.4 some()またはevery()方法(es 5)
作用:配列要素に対して指定関数の論理判定を行います.戻り値:bollan
戻り値:新しい配列のために、元の配列を変更しません.
6.copyWithin方法
作用:現在の配列の内部で、指定された位置のメンバーを他の場所にコピーし、現在の配列を返します.パラメータ:最初のパラメータ(この位置からデータの置換を開始する). 番目のパラメータ(この位置からデータを読み出すことができます.デフォルトは0、負は逆数を表します.) 第3のパラメータ(任意の位置まで読み取りを停止し、デフォルトは配列長) 置換された配列を返します(配列が変更されました)
役割:最初の条件に合致する配列メンバーを見つける.すべての配列のメンバは、最初の戻り値がtrueであるメンバを見つけるまで、関数を順次実行します.コールバック関数は、3つのパラメータ、順番に値、位置、元の配列を受け入れることができます.戻り値:find()は、見つかったメンバーを返します.findIndex()はメンバーの位置を返します.
作用:指定された値パラメータがあるかどうかを確認します.最初のパラメータ必須(チェックされる所定の値) 番目のパラメータはオプションで、検索の開始位置を表し、デフォルトは0、負は逆数の位置 を表します.
戻り値:Boolean注意:indexOfとの違いは、indexOfが演算子の強比を行い、NaNが誤って判定されます.
1.JSON配列フォーマットからAray.from()を変換する方法:
let people={
0:'zhangsan',
'1':24, //key 0,1,2......
length:2 // length
};
let trans=Array.from(people);//Array.from()
console.log(trans); //['zhangsan',24]
これは標準的なJSON配列フォーマットであり、一般的なJSONとの対比はkey値が配列下付きであり、最後にlength属性が一つ多くなりました.このような特殊なjson形式であれば、ES 6の文法を用いて配列に変換することができます.ES 6ではほとんどのAray操作がArayオブジェクトに存在します.私たちはAray.from(xxx)で変換します.上のJSONコードを行列に変換してコンソールに印刷します.2.Aray.of()方法:
テキストの山や変数を行列に変換するのに役立ちます.開発の中でよく似た配列の文字列を手に入れました.evalを使って変換する必要があります.evalの効率はとても低いです.それは私たちのプログラムを遅くします.この時に私達はAray.of方法を使うことができます.
let arr =Array.of(3,4,5,'zhang','li');
console.log(arr); //[3, 4, 5, "zhang","li"]
3.find()例の方法:例示的な方法とは、Arayオブジェクトで始まるのではなく、既に存在する配列が必要であり、その後に使用する方法のことである.これが例示的な方法である.ここのfind法は配列から検索される.find法では匿名関数を導入する必要があります.関数は三つのパラメータに入る必要があります.
let arr=[1,2,3,4,5,6,7,8,9];
console.log(arr.find(function(value,index,arr){
return value > 5;
})) // 6 : return,
4.fill()の実例的な方法:fill()も例示的な方法であり、その役割は配列を充填することであり、3つのパラメータを受信することであり、最初のパラメータは充填変数であり、2番目は充填開始位置、3番目は充填位置である.
let arr=[0,1,2,3,4,5,6,7,8,9];
arr.fill('javascript',2,4);
console.log(arr);//[0, 1, "javascript", "javascript", 4, 5, 6, 7, 8, 9]
5.配列のエルゴード5.1 for…of
let arr=['js','java','python','c','c++'];
for (let item of arr){
console.log(item);//j java python c c++
}
for.of配列インデックス:時には配列のインデックスが必要です.次のコードを使って配列インデックスを出力できます. let arr=['js','java','python','c','c++'];
for (let index of arr.keys()){
console.log(index);//0 1 2 3 4
}
配列の内容と索引を同時に出力します.私たちはentries()という方法を使って、私たちのfor...ofサイクルに合わせてコンテンツと索引を同時に出力できます.
let arr=['js','java','python','c','c++'];
for (let [index,val] of arr.entries()){
console.log(index,val); //0 'js' 1 'java' 2 'python' 3 'c' 4 'c++'
}
entries()例の方法:entries()の例の方式はIterator形式の配列を生成して、このような形式の利点は必要な時にnext()を使って手動で次の値にジャンプできることです.下記のコードを見てみます.let arr=['js','java','jquery']
let list=arr.entries();
console.log(list.next().value); //[0, "js"]
console.log(list.next().value); //[1, "java"]
console.log(list.next().value); //[0, "jquery"]
5.2 forEach()方法(ES 5)let arr=['js','java','jquery'];
arr.forEach((val,index)=>console.log(index,val));//0 'js' 1 'java' 2 'jquery'
forEachサイクルの特徴は空の配列要素が自動的に省略されることです.直接ふるいにかけるのと同じです.でも、時々私達を助けてくれます.5.3 filter()方法(ES 5)
戻り値:サブセットを返します.
//eg:1
let arr=['js','java','jquery'];
arr.filter(x=>console.log(x));//js java jquery
//eg:2
a = [5,4,3,2,1];
values = a.filter(function(x){return x<3});// [2,1]
filterにはループ機能もあります.5.4 some()またはevery()方法(es 5)
作用:配列要素に対して指定関数の論理判定を行います.戻り値:bollan
//some
let arr=['js','java','jquery'];
arr.some(x=>console.log(x)); //js java jquery false
let a = [1,2,3,4,5];
a.some((x)=>{return x<5}) // true true
//every
let arr=['js','java','jquery'];
arr.every(x=>{console.log(x)}); //js false
let a = [1,2,3,4,5];
a.every((x)=>{return x<10}) // true true
5.5 map()方法(es 5)戻り値:新しい配列のために、元の配列を変更しません.
//eg:1
let arr=['js','java','jquery'];
console.log(arr.map(x=>'web')); //["web", "web", "web"]
//eg:2
a = [1,2,3];
b = a.map(function(x){return x*x;}); //[1,4,9]
mapはここで代替の役割を果たします.6.copyWithin方法
作用:現在の配列の内部で、指定された位置のメンバーを他の場所にコピーし、現在の配列を返します.パラメータ:
[1, 2, 3, 4, 5].copyWithin(0, 3) // [4, 5, 3, 4, 5]
7.find()とfindIndex()役割:最初の条件に合致する配列メンバーを見つける.すべての配列のメンバは、最初の戻り値がtrueであるメンバを見つけるまで、関数を順次実行します.コールバック関数は、3つのパラメータ、順番に値、位置、元の配列を受け入れることができます.戻り値:find()は、見つかったメンバーを返します.findIndex()はメンバーの位置を返します.
[1,5,10,15].find(function(value,index,arr){
return value > 9;
})//10
8.includies()方法作用:指定された値パラメータがあるかどうかを確認します.
戻り値:Boolean注意:indexOfとの違いは、indexOfが演算子の強比を行い、NaNが誤って判定されます.
[1, 2, 3].includes(2); // true
[1, 2, 3].includes(4); // false
[1, 2, NaN].includes(NaN); // true