lodashノートのJSライブラリ

チャンク

効果:一次元アレイ、二次元アレイ、から添字1開始に分割

var arr = [1,2,3,4]
var newArr = _.chunk(arr, 3)
console.log("newArr", newArr[0]) // [[1,2,3], [4]]

コンパクト

役割:偽の値のすべての結果をフィルタリング

var arr = [1, 2, NaN, undefined, '', 0, false, null, 'a']
var newArr = _.compact(arr)
console.log("newArr", newArr) // [1, 2, 'a']

UNIQ

役割:配列の重複排除

var arr = [1, 2, 2, 1, 3, 'a', 'a'];
var newArr = _.uniq(arr)
console.log("newArr", newArr) // [1, 2, 3, 'a']

拒否してフィルタ

役割:フィルタアレイの条件によれば、
これら二つが一緒に議論する理由は、両方がフィルタリングされているので、ちょうど逆の戻り値

var arr = [
      {id:0, name: '阿布', age: 23},
      {id:2, name: 'bbb', age:30},
      {id:1, name: 'ccc', age:31},
      {id:1, name: 'ddd', age:32},
      {id:3, name: 'eee', age:33}
    ];
var newArr = _.reject(arr, ['id', 1])
console.log("newArr", newArr) 
// [{id:0, name: '阿布', age: 23},
// {id:2, name: 'bbb', age:30},
// {id:3, name: 'eee', age:33}]
var newArr1= _.filter(arr, ['id', 1])
console.log("newArr1", newArr) 
//[{id:1, name: 'ccc', age:31},
// {id:1, name: 'ddd', age:32}]

シャッフル

役割:オーダーのうち配列

var arr = [1, 2, 3, 4];
var newArr = _.shuffle (arr)
console.log("newArr", newArr) // [4, 2, 3, 1]

ピック

役割1:アレイからスクリーニングオブジェクト

var arr = [
      {id:0, name: '11', age: 2},
      {id:0, name: '33', age: 20},
      {id:1, name: '22', age: 18}
    ]
var newArr = _.pick(arr, ['id', 0])
console.log('newArr', newArr, 'type', typeof(newArr)) // {id:0, name: '11', age: 2}

説明:資格を探すには、内側に停止しました

アクション2:オブジェクトからのフィルタのプロパティは、オブジェクトを返します。

var obj = {id:0, name: '11', age: 2};
var newArr1 = _.pick(obj, ['name', 'age'])
console.log('newArr1', newArr1, 'type', typeof(newArr1)) // {name: "11", age: 2}

キー

役割:配列からなる、オブジェクトのすべてのキーを取得します

var obj = {id:0, name: '11', age: 2};
var arr = _.keys(obj);
console.log(arr) // ['id', 'name', 'age']

クローンとcloneDeep

オブジェクトのコピー、同じメモリ空間と違い、他の新しいメモリ空間が、バグであると言われて

マージ

役割:2つのオブジェクトをマージ

   var obj1 = {
     a: [{age: 2},{name:'张三'}]
   }
   var obj2 = {
     a: [{height:175},{weight:120}]
   }

   var newObj = _.merge(obj1, obj2);
   console.log(newObj) //结果 {a: [{age: 2, height: 175},{name:'张三‘,height:120}]}

ランダム

役割:乱数の範囲を取得します

 var newObj = _.random(10, 20);
 console.log(newObj) // 结果是10到20之间的随机整数,包含10和20
 var newObj = _.random(10, 20, true);
 console.log(newObj) // 结果是10到20之间的随机小数

サンプル

役割:配列の要素を取得します

var arr = ['第一个', '第二个']
var str = _.sample(arr);
console.log(str) 

見つけます

役割:配列から要素を探します

var arr = [
   {
	 id: 1,
     name: '张三'
    },
    {
     id: 2,
     name: '李四'
    }
  ]
  var str = _.find(arr, ['id', 1]);
  console.log(str) // { id: 1, name: '张三'}

1つの寸法を小さく

var arr = [1,[2,3,[4,5]]]
var newArr = _.flatten(arr)
console.log('newArr', newArr) // [1,2,3,[4,5]]

完全な次元削減

 var arr = [1,[2,3,[4,5]]]
 var newArr = _.flattenDeep(arr)
  console.log('newArr', newArr) // [1,2,3,4,5]

統合された使用

最大のIDを探します

 var arr = [
     {
      id: 1,
      name: '张三'
     },
      {
      id: 3,
      name: '张三'
     },
     {
      id: 2,
      name: '李四'
     },
     {
      id: 4,
      name: '李四'
     }
   ]
   var str = _.find(arr, ['id', _.max(_.map(arr, 'id'))]);
   console.log(str) // {id: 4, name: '李四'}

おすすめ

転載: blog.csdn.net/qq_36939013/article/details/93384673