lodash---1.使用实列

Posted xiao-peng-ji

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lodash---1.使用实列相关的知识,希望对你有一定的参考价值。

1.Lodash 的随机数生成函数

//原生js
function getsRandomNumber(min, max)
return Math.floor(Math.random() * (max - min + 1)) + min;

getsRandomNumber(20, 100);
console.log(getsRandomNumber(20, 100));
// Lodash
console.log(_.random(20, 30));
console.log(_.random(15, 20,true))

2.对象扩展

//原生js

Object.prototype.extend = function(obj)
for (var i in obj)
if (obj.hasOwnProperty(i))
this[i] = obj[i];


;
var objAa =
"name": "小明明",
"car": "丰田"
;
var objBb =
"name": "小咪咪",
"age": 200,
"marks": 100
;

objAa.extend(objBb);
console.log(objAa) // "name": "james", "age": 17, "car": "suzuki";

// Lodash
_.assign(objAa, objBb)
console.log(_.assign(objAa, objBb))

_.assign 是浅拷贝, 和ES6新增的 Object.assign 函数功能一致(建议优先使用Object.assign)。

3.筛选属性

var objAba =
"name": "小敏敏",
"car": "大众",
"age": 100
;

//objAba.remove([‘car‘, ‘age‘]);
//console.log(objAba); // "name": "colin"

// Lodash
//objAba = _.omit(objAba, [‘car‘, ‘age‘]);
//console.log(objAba)
// => "name": "小敏敏"

//objAba = _.omit(objAba, "car");
//console.log(objAba)
// => "name": "小敏敏", "age": 100

objAba = _.omit(objAba, _.isNumber);
console.log(objAba)

4._.pick 是 _.omit 的相反操作,用于从其他对象中挑选属性生成新的对象。

var objuserinfo =
"name": "夏米",
"car": "大众",
"age": 200
;
//var objB = objA.pick([‘car‘, ‘age‘]);
//console.log(objB)
// => "car": "suzuki", "age": 17

// Lodash
var objB = _.pick(objuserinfo, [‘name‘, ‘age‘]);
// => "car": "suzuki", "age":17
console.log(objB)

5.随机元素

var luckNum = ["AA", "BB", "CCC", "HHH", "GGG"];

function pickRandom(luckNum)
var index = Math.floor(Math.random() * (luckNum.length - 1));
return luckNum[index];

pickRandom(luckNum); //John
console.log(pickRandom(luckNum))

// Lodash
_.sample(luckNum); //
console.log(_.sample(luckNum)); //
// Lodash - Getting 2 random item
//_.sample(luckNum, 2); //

6.针对 JSON.parse 的错误处理

// Using try-catch to handle the JSON.parse error
function parse(str)
    try 
        return JSON.parse(str);
    
    
    catch(e) 
        return false;
    


// With Lodash
function parseLodash(str)
    return _.attempt(JSON.parse.bind(null, str));


parse(‘a‘);
// => false
parseLodash(‘a‘);
// => Return an error object

parse(‘"name": "小咪咪"‘);
// => Return "name": "小咪咪"
parseLodash(‘"name": "小咪咪"‘);
// => Return "name": "小咪咪"

以上是关于lodash---1.使用实列的主要内容,如果未能解决你的问题,请参考以下文章

python 使用类实列化对象

npio导出实列分享

H3C ——DHCP配置实列

python 爬虫实列

docker中启动2个mysql实列

使用 'lodash-es' 和 create-react-app 减少捆绑包中的 Lodash