ES 6配列追加の方法

12752 ワード

ES 6配列方法
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法では匿名関数を導入する必要があります.関数は三つのパラメータに入る必要があります.
  • value:現在の検索値を表します.
  • index:現在検索されている配列インデックスを表します.
  • arr:現在の配列を表します.
  • 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
    }
  • arr.keys()の方法は、keyが
  • を遍歴する価値があることである.
  • arr.values()の方法は、valueの値に対するエルゴード
  • である.
  • arr.entries()の方法は、キーのペアに対するエルゴード
  • である.
    配列の内容と索引を同時に出力します.私たちは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方法
    作用:現在の配列の内部で、指定された位置のメンバーを他の場所にコピーし、現在の配列を返します.パラメータ:
  • 最初のパラメータ(この位置からデータの置換を開始する).
  • 番目のパラメータ(この位置からデータを読み出すことができます.デフォルトは0、負は逆数を表します.)
  • 第3のパラメータ(任意の位置まで読み取りを停止し、デフォルトは配列長)
  • 置換された配列を返します(配列が変更されました)
    [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()方法
    作用:指定された値パラメータがあるかどうかを確認します.
  • 最初のパラメータ必須(チェックされる所定の値)
  • 番目のパラメータはオプションで、検索の開始位置を表し、デフォルトは0、負は逆数の位置
  • を表します.
    戻り値:Boolean注意:indexOfとの違いは、indexOfが演算子の強比を行い、NaNが誤って判定されます.
    [1, 2, 3].includes(2);     // true
    [1, 2, 3].includes(4);     // false
    [1, 2, NaN].includes(NaN); // true