cloneDeep
cópia profunda
retornar
uma nova matriz
exemplo
import { cloneDeep } from 'lodash'
// 会开辟一个新的堆栈空间
let form = cloneDeep(this.editSignal)
var objects = [{ 'a': 1 }, { 'b': 2 }];
var deep = _.cloneDeep(objects);
console.log(deep[0] === objects[0]);
// => false
clone
cópia rasa
retornar
uma nova matriz
exemplo
import { clone } from 'lodash'
let form = clone(this.editSignal)
var objects = [{ 'a': 1 }, { 'b': 2 }];
var shallow = _.clone(objects);
console.log(shallow[0] === objects[0]);
// => true
ordenar por
ordenar
parâmetro
collection
(Array|Object) : A coleção para iterar.[iteratees=[_.identity]]
(Array[]|Function[]|Object[]|string[]) : Função iteradora para classificação.[orders]
(string[]) :iteratees
A ordem de classificação da função iterativa, especifique "desc
" para ordem decrescente ou especifique "asc
" para ordem crescente, o padrão é ordem crescente
retornar
retornar um novo array ou objeto
exemplo
import lodash from 'lodash'
const sortArr = lodash.orderBy(newArr, ['value'], ['desc'])
newArr =
[
{
"name": "严重",
"value": 85,
"color": "#FF4C51"
},
{
"name": "高",
"value": 20,
"color": "#fb8c00"
},
{
"name": "中",
"value": 30,
"color": "#EEC900"
},
{
"name": "低",
"value": 50,
"color": "#3caea3"
},
{
"name": "信息",
"value": 20,
"color": "#7b809a"
},
{
"name": "测试",
"value": 5,
"color": "#038CD6"
}
]
sortArr =
[
{
"name": "严重",
"value": 85,
"color": "#FF4C51"
},
{
"name": "低",
"value": 50,
"color": "#3caea3"
},
{
"name": "中",
"value": 30,
"color": "#EEC900"
},
{
"name": "高",
"value": 20,
"color": "#fb8c00"
},
{
"name": "信息",
"value": 20,
"color": "#7b809a"
},
{
"name": "测试",
"value": 5,
"color": "#038CD6"
}
]
filtro
filtro
parâmetro
collection
(Array|Object) : Uma coleção para iterar.[predicate=_.identity]
(Array|Function|Object|string) : Função a ser chamada para cada iteração.
retornar
(Array) : Retorna um novo array filtrado.
usar
import { filter } from 'lodash'
const arr = filter(this.signalValueTypeList, v => this.query.signalValueTypes.includes(v.text))
exemplo
import _ from 'lodash'
var users = [
{ 'user': 'barney', 'age': 36, 'active': true },
{ 'user': 'fred', 'age': 40, 'active': false }
];
_.filter(users, function(o) { return !o.active; });
// => objects for ['fred']
// The `_.matches` iteratee shorthand.
_.filter(users, { 'age': 36, 'active': true });
// => objects for ['barney']
// The `_.matchesProperty` iteratee shorthand.
_.filter(users, ['active', false]);
// => objects for ['fred']
// The `_.property` iteratee shorthand.
_.filter(users, 'active');
// => objects for ['barney']
groupBy
grupo
parâmetro
collection
(Array|Object) : Uma coleção para iterar.[iteratee=_.identity]
(Array|Function|Object|string) : Esta função iterativa é usada para transformar a chave.
retornar
uma nova coleção
exemplo
// The `_.property` iteratee shorthand.
_.groupBy(['one', 'two', 'three'], 'length');
// => { '3': ['one', 'two'], '5': ['three'] }
ordenar por
A classificação é semelhante a orderBy, então geralmente escolho uma com base no meu humor hahahaha
parâmetro
collection
(Array|Object) : A coleção para iterar.[iteratees=[_.identity]]
(…(Array|Array[]|Function|Function[]|Object|Object[]|string|string[])) : Esta função determina a classificação.
retornar
matriz classificada
exemplo
var users = [
{ 'user': 'fred', 'age': 48 },
{ 'user': 'barney', 'age': 36 },
{ 'user': 'fred', 'age': 40 },
{ 'user': 'barney', 'age': 34 }
];
_.sortBy(users, function(o) { return o.user; });
// => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]
_.sortBy(users, ['user', 'age']);
// => objects for [['barney', 34], ['barney', 36], ['fred', 40], ['fred', 48]]
_.sortBy(users, 'user', function(o) {
return Math.floor(o.age / 10);
});
// => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]