JavaScript高性能モジュール化ライブラリのLodashフレーム

32411 ワード

記事の目次
  • .ダウンロードアドレス
  • .使用開始
  • .hunnk方法
  • .comppact方法
  • .uniq方法
  • .reject方法
  • .shuffle方法
  • .pick方法
  • .keys方法
  • .clone Deep方法
  • .forEach方法
  • .merge方法
  • 11.randowm方法
  • .find方法
  • 13.keyBy方法
  • 14.filter方法
  • 15.map方法
  • .16 max/.min/_.sumメソッド
  • .pad/.padStart/u.padEndメソッド
  • json配列の中でidが一番大きいものを一つ選びます.
  • は、json配列のうちのいずれかの値
  • を更新する.
  • flaten方法
  • 配列デ重量
  • 1.ダウンロード先
    https://www.bootcdn.cn/lodash.js/
    2.使用開始
    1.hunnk方法
    配列を切り分ける
    var arr = [1,2,3,4]
    var newArr = _.chunk(arr,2)
    console.log(newArr) //[1,2] [3,4]
    
    2.compect方法
    偽の値を削除します.(すべての空の値、0、NaNをフィルタリングします.)
    _.compact(['1','2',' ',0])
    // => ['1','2']
    
    3.uniq方法
    配列の重さを削除します.(配列内のオブジェクトを重くしないと、配列だけが重くなります.オブジェクトが重くなりません.)
    _.uniq([1,1,3])
    // => [1,3]
    
    4.reject方法
    条件に応じて要素を削除します.
    var foo = [
        {id: 0, name: "aaa", age: 33},
        {id: 1, name: "bbb", age: 25}
    ]
    var bar = _.reject(foo, ['id', 0])
    
    //bar = [{id: 1, name: "bbb", age: 25}]
    
    5.shuffle方法
    無秩序化
    _.shuffle([1,2,3,4]);//    
    
    6.pick方法
    配列をkeyでフィルタする
    var foo = {id: 0, name: "aaa", age: 33}
    var bar = _.pick(foo, ['name', 'age'])
    //bar = {name: "aaa", age: 33}
    
    7.keysの方法
    objectの中のすべてのkeyを返します.
    var foo = {id: 0, name: "aaa", age: 33}
    var bar = _.keys(foo)
    //bar = ['id', 'name', 'age']
    
    8.clone Deep方法
    深さコピー
    9.forEach方法
    _.forEach(agent,function(n,key) {
    
        agent[key].agent_id= agent[key].agent_name
    
    })
    
    これはよくあるforEachの配列が遍歴しています.lodashを使った後、_.これは関数ではなく、値です.そのままでいいです
    const arr = _.forEach();
    
    このときarrは新しい配列agentです.
    10.merge方法
    mergeパラメータを統合して再帰的にソースオブジェクトと継承可能な列挙文字列監視属性を対象オブジェクトに統合します.ソースオブジェクトは左から右に参照され、後続のソースは以前のソースの属性割り当てをカバーします.
    var object = {
      'a': [{ 'b': 2 }, { 'd': 4 }]
    };
     
    var other = {
      'a': [{ 'c': 3 }, { 'e': 5 }]
    };
     
    _.merge(object, other);
    // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] 
    
    実際の開発では、フロントエンドのインターフェースでの要求をmergeすることができます前のqueryと現在の変更されたクエリの値は、バックエンドインターフェースのデータを要求します.
    11.randowm方法
    console.log(_.random(10, 20)); //      
    _.random(15, 20, true); //     
    _.sample(["lisong", "heyan"], 1);//            ,attr2:       
    
    12.find方法
    find検索配列
    var foo = [
        {id: 0, name: "aaa", age: 33},
        {id: 1, name: "bbb", age: 25}
    ]
    var bar = _.find(foo, ['id', 0])
    //bar = {id: 0, name: "aaa", age: 33}
    
    見つけられなかったらundefinedに戻りますので、処理してください.
    13.keyBy方法
    ある属性をキーにして、行列をオブジェクトに変換します.
    var foo = var foo = [
        {id: 0, name: "aaa", age: 33},
        {id: 1, name: "bbb", age: 25}
    ]
    var bar = _.keyBy(foo, 'name')
    //bar = {
    //    aaa: {id: 0, name: "aaa", age: 33},
    //    bbb: {id: 1, name: "bbb", age: 25}
    //}
    
    14.filter方法
    条件に応じて条件に合う要素をフィルタリングし、新しい配列を返します.
    var foo = var foo = [
        {id: 0, name: "aaa", age: 33},
        {id: 1, name: "bbb", age: 25}
    ]
    var bar = _.filter(foo, ['name', "aaa"])
    //bar = {
    //    aaa: {id: 0, name: "aaa", age: 33}
    //}
    
    15.map方法
    セットからkeyを選択して、その値を行列として返します.
    var foo = var foo = [
        {id: 0, name: "aaa", age: 33},
        {id: 1, name: "bbb", age: 25}
    ]
    var bar = _.map(foo, 'name')
    //bar = ["aaa", "bbb"]
    
    16.max/.min/_.sumメソッド
    配列の最大値、最小値、配列の合計
    var foo = [1, 2, 3, 4]
    var bar = _.max(foo)
    //bar = 4
    bar = _.min(foo)
    //bar = 1
    bar = _.sum(foo)
    //bar = 10
    
    17.pad/.padStart/u.padEndメソッド
    両端、先頭、末尾に文字を揃えます.
    var foo = "helloworld"
    var bar = _.pad(foo, 14, '-')
    //bar = --helloworld--
    bar = _.padStart(foo, 14, '-')
    //bar = ----helloworld
    bar = _.padEnd(foo, 14, '-')
    //bar = helloworld----
    
    json配列の中でidが一番大きいものを一つ選びます.
    var foo = [
        {id: 0, name: "aaa", age: 33},
        {id: 1, name: "bbb", age: 25}
    ]
    var bar = _.find(foo, ['id', _.max(_.map(foo, 'id'))])
    // bar = {id: 1, name: "bbb", age: 25}
    // ps:    maxBy  key   
    
    json配列のいずれかの値を更新します.
    var foo = [
        {id: 0, name: "aaa", age: 33},
        {id: 1, name: "bbb", age: 25}
    ]
    let list = _.keyBy(foo, 'id')
    list[0].name = "ccc"
    var bar = _.map(list)
    // bar = [
    //    {id: 0, name: "ccc", age: 33},
    //    {id: 1, name: "bbb", age: 25}
    //]
    
    flatenメソッド
    var arr = [1,2,[3,4,[5],6]]
    var a8 = _.flatten(arr)  //[ 1, 2, 3, 4, [ 5 ], 6 ]
    var a9 = _.flattenDeep(arr)  //[ 1, 2, 3, 4, 5, 6 ]
    var a10 = _.flattenDepth(arr,2)  //[ 1, 2, 3, 4, 5, 6 ]
    
    配列
    var arr2 = [12,14,11,12,12,1,14,16,17,22,2,11,12]
    var a11 = Array.from(new Set(arr2))
    var a12 = [...new Set(arr2)]
    var a13 = _.uniq(arr2)  //[ 12, 14, 11, 1, 16, 17, 22, 2 ]
    var arrObj = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 },{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }];
    var a14 = _.uniqWith(arrObj, _.isEqual)  //[ { x: 1, y: 2 }, { x: 2, y: 1 } ]