Lodash篇
1.深层查找属性值
var ownerArr = [{
"owner": "Colin",
"pets": [{"name": "dog1"}, {"name": "dog2"}]
}, {
"owner": "John",
"pets": [{"name": "dog3"}, {"name": "dog4"}]
}];
var lodashMap = _.map(ownerArr, 'pets[0].name');
console.log('------- lodashMap -------');
console.log(lodashMap); -> ["dog1","dog3"]
2.深克隆对象
var objA = {
"name": "戈德斯文"
};
var objB = _.cloneDeep(objA);
console.log(objA === objB); -> false
3.在指定范围内获取一个随机值
getRandomNumber(15, 20);
你也可以指定返回的结果为浮点数_.random(15,20,true);
4.合并对象
var objA = {"name": "戈德斯文", "car": "宝马"};
var objB = {"name": "柴硕", "loveEat": true};
console.log(_.assign(objA, objB));
->{"name": "柴硕", "car": "宝马", "loveEat": true}
5.判断对象中是否含有某元素
var smartPerson = {
'name': '戈德斯文',
'gender': 'male'
},
smartTeam = ["戈德斯文", "杨海月", "柴硕", "师贝贝"];
console.log(_.includes(smartPerson, '戈德斯文')); -> true
console.log(_.includes(smartTeam, '杨海月')); -> true
console.log(_.includes(smartTeam, '杨海月',2)); -> false
_.includes()
第一个参数是需要查询的对象,第二个参数是需要查询的元素,第三个参数是开始查询的下标.
6.数组去重
var arr1 = [2, 1, 2];
var arr2 = _.uniq(arr1);
console.log(arr2); -> [2,1]