当前位置: 首页 > news >正文

织梦网站模板套用黑马教育培训官网

织梦网站模板套用,黑马教育培训官网,安丘做网站,做网站怎么返回首页文章目录 一、数组1、chunk分组2、difference、differenceBy、differenceWith3、findIndex4、intersection、intersectionBy、intersectionWith5、union、unionBy、unionWith 二、对象1、pick、omit 2、get、set三、数学1、sum、sumBy2、range 四、工具函数1、isEqual、isEmpty…

文章目录

  • 一、数组
    • 1、chunk分组
    • 2、difference、differenceBy、differenceWith
    • 3、findIndex
    • 4、intersection、intersectionBy、intersectionWith
    • 5、union、unionBy、unionWith
  • 二、对象
    • 1、pick、omit
  • 2、get、set
  • 三、数学
    • 1、sum、sumBy
    • 2、range
  • 四、工具函数
    • 1、isEqual、isEmpty
    • 2、clone、cloneDeep
    • 3、debounce 防抖
    • 4、throttle 节流
    • 5、lodash对象

Lodash 是一个一致性、模块化、高性能的 JavaScript 实用工具库。

一、数组

1、chunk分组

_.chunk(array, [size=1]);size表示间隔

_.chunk(['a', 'b', 'c', 'd', 'e'], 2);
// => [['a', 'b'], ['c', 'd'], ['e']]

2、difference、differenceBy、differenceWith

  • isEqual函数表示深度比较
  • difference 代表基础数据类型的对比
  • differenceBy 表示对值进行转化后对比
  • differenceWith 表示两个数据整体的对比
  • 差异集合
// 找不同
_.difference([3, 2, 1], [4, 2]);
// => [3, 1]// array: 目标 values:排除值;iteratee调用每个元素后返回值,再对比该返回值
// _.differenceBy(array, [values], [iteratee=_.identity])
_.differenceBy([3.1, 2.2, 1.3], [4.4, 2.5], Math.floor);
// 等同于
_.differenceBy([3.1, 2.2, 1.3], [4.4, 2.5], (value) => Math.floor(value));
// => [3.1, 1.3] // 2.2 2.5 调用后都是2,所以被识别成同一个值var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];_.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);
// => [{ 'x': 2, 'y': 1 }]
_.differenceWith(objects, [{ 'x': 1, 'y': 2 }], (arrVal, othVal) => arrVal.x > othVal.x);
// => [{ 'x': 1, 'y': 2 }]

3、findIndex

  • findIndex(array, [iteratee=_.identity], [fromIndex=0]), [] 中括号表示可选参数,可传可不传,但是不能跨可选,也就是说连续两个可选参数,想要使用第二个参数,也必须使用第一个参数
  • [predicate=_.identity] (Array|Function|Object|string) 该参数可以有多种参数类型,Function基本就是js中的findIndex实现,也可以使用其他快捷方式
  • 由于一些用户的浏览器版本比较低,当使用最新的ECMAScript新语法可能出现异常,直接导致线上问题(自己本地开发不一定有问题),所以一些函数可以借用lodash库辅助实现即可(当然也可以自己定义实现)
var users = [{ 'user': 'barney',  'active': false },{ 'user': 'fred',    'active': false },{ 'user': 'pebbles', 'active': true }
];_.findIndex(users, function(o) { return o.user == 'barney'; }); // Function
// => 0
_.findIndex(users, { 'user': 'fred', }) // Object
// => 1

4、intersection、intersectionBy、intersectionWith

  • 类似于difference,只不过函数结果是取交集
_.intersection([2, 1], [4, 2], [1, 2]); // 基础数据类型
// => [2]
_.intersectionBy([2.1, 1.2], [4.3, 2.4], Math.floor); // 值进行转化
// => [2.1]
var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];
var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];_.intersectionWith(objects, others, _.isEqual); // 两个数据整体
// => [{ 'x': 1, 'y': 2 }]

5、union、unionBy、unionWith

  • 合集,注意有去重效果;
_.union([2], [1, 2]);
// => [2, 1]
// 另外两种就不一一举例了,跟交集、差集类似

二、对象

1、pick、omit

  • pick挑选部分属性
  • omit排除部分属性
// _.pick(object, [props])
var object = { 'a': 1, 'b': '2', 'c': 3 };_.pick(object, ['a', 'c']);
// => { 'a': 1, 'c': 3 }
_.omit(object, ['a', 'c']);
// => { 'b': '2' }

2、get、set

  • _.get(object, path, [defaultValue]); 注意path表示动态的路径
  • _.set(object, path, value); 设置值
var object = { 'a': [{ 'b': { 'c': 3 } }] };_.get(object, 'a[0].b.c');
// => 3_.set(object, 'a[0].b.c', 5);
console.log(object.a[0].b.c);
// => 5

三、数学

1、sum、sumBy

快速计算总数

_.sum([4, 2, 8, 6]);
// => 20var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];_.sumBy(objects, function(o) { return o.n; }); // 函数更加灵活
// => 20

2、range

_.range([start=0], end, [step=1]);

// 包含起始点,不包含终止点(跟Array.slice有些类似)可以快速创建范围数的集合
_.range(1, 5, 1);
// => [1, 2, 3, 4]

四、工具函数

1、isEqual、isEmpty

  • isEqual数据深度比较,是否全等返回boolean
  • isEmpty返回是否是空对象
var object = { 'a': 1 };
var other = { 'a': 1 };_.isEqual(object, other);
// => true_.isEmpty({})
// => true

2、clone、cloneDeep

  • clone表示浅拷贝,一般被解构赋值代替
  • cloneDeep表示深拷贝,注意如果数据量大,有性能问题;一般使用JSON性能比较高JSON.parse(JSON.stringify([{}])),当然JSON存在function、undefined无法转化的问题
var objects = [{ 'a': 1 }, { 'b': 2 }];var deep = _.cloneDeep(objects);
console.log(deep[0] === objects[0]);
// => false

3、debounce 防抖

  • _.debounce(func, [wait=0], [options=]);options.leading 表示是否延迟开始前调用,默认false;
    options.maxWait 表示fun被推迟的最大值;options.maxWait 表示是否延迟开始后调用,默认true
function click(params) {console.log('click')
}
document.body.addEventListener('click', _.debounce(click, 300))

4、throttle 节流

  • _.throttle(func, [wait=0], [options=]);options.leading 表示是否延迟开始前调用,默认true;options.maxWait 表示是否延迟开始后调用,默认false
document.body.addEventListener('click', _.throttle(() => console.log('click'), 1000))

5、lodash对象

  • lodash对象可以链式调用
_([1, 2, 3]).map(item => item * item).reduce(_.add)

文章转载自:
http://semidemisemiquaver.sfrw.cn
http://theocrat.sfrw.cn
http://asteroid.sfrw.cn
http://accidently.sfrw.cn
http://circulation.sfrw.cn
http://tricuspid.sfrw.cn
http://pentad.sfrw.cn
http://likelihood.sfrw.cn
http://fourteener.sfrw.cn
http://galant.sfrw.cn
http://monopoly.sfrw.cn
http://samoan.sfrw.cn
http://anywhere.sfrw.cn
http://announcing.sfrw.cn
http://eparterial.sfrw.cn
http://exercitorial.sfrw.cn
http://arsenical.sfrw.cn
http://microphone.sfrw.cn
http://isotopy.sfrw.cn
http://spasmogen.sfrw.cn
http://hel.sfrw.cn
http://ishmaelite.sfrw.cn
http://prejudicious.sfrw.cn
http://retinae.sfrw.cn
http://inquiet.sfrw.cn
http://doubloon.sfrw.cn
http://impropriety.sfrw.cn
http://tore.sfrw.cn
http://monarchist.sfrw.cn
http://saccharogenesis.sfrw.cn
http://pastiness.sfrw.cn
http://apart.sfrw.cn
http://sakeen.sfrw.cn
http://decarbonate.sfrw.cn
http://imp.sfrw.cn
http://autocritical.sfrw.cn
http://fluvialist.sfrw.cn
http://polynesia.sfrw.cn
http://memorialist.sfrw.cn
http://gayety.sfrw.cn
http://fornicate.sfrw.cn
http://delos.sfrw.cn
http://pugnacity.sfrw.cn
http://anchorage.sfrw.cn
http://arrear.sfrw.cn
http://pci.sfrw.cn
http://decolourant.sfrw.cn
http://yahtzee.sfrw.cn
http://indie.sfrw.cn
http://aerobatics.sfrw.cn
http://signet.sfrw.cn
http://farthing.sfrw.cn
http://hydroforming.sfrw.cn
http://grapevine.sfrw.cn
http://rugola.sfrw.cn
http://demimondaine.sfrw.cn
http://josias.sfrw.cn
http://outrace.sfrw.cn
http://biographee.sfrw.cn
http://keelung.sfrw.cn
http://hemostatic.sfrw.cn
http://paraceisian.sfrw.cn
http://pedestrianise.sfrw.cn
http://canaanite.sfrw.cn
http://rasorial.sfrw.cn
http://pagehood.sfrw.cn
http://washcloth.sfrw.cn
http://cryptoclastic.sfrw.cn
http://volos.sfrw.cn
http://grog.sfrw.cn
http://dag.sfrw.cn
http://stegosaurus.sfrw.cn
http://mergee.sfrw.cn
http://christchurch.sfrw.cn
http://depraved.sfrw.cn
http://whereafter.sfrw.cn
http://sempiternity.sfrw.cn
http://succinctness.sfrw.cn
http://hommock.sfrw.cn
http://legpull.sfrw.cn
http://schoolwork.sfrw.cn
http://zairese.sfrw.cn
http://constitution.sfrw.cn
http://nullarbor.sfrw.cn
http://mechanotheropy.sfrw.cn
http://happenchance.sfrw.cn
http://surprisal.sfrw.cn
http://vest.sfrw.cn
http://salvar.sfrw.cn
http://bossiness.sfrw.cn
http://elbrus.sfrw.cn
http://dikereeve.sfrw.cn
http://overlight.sfrw.cn
http://kamerad.sfrw.cn
http://disclaimation.sfrw.cn
http://taxing.sfrw.cn
http://mollweide.sfrw.cn
http://ag.sfrw.cn
http://fathogram.sfrw.cn
http://apochromat.sfrw.cn
http://www.hrbkazy.com/news/70332.html

相关文章:

  • 有教做衣服的网站吗竞价被恶意点击怎么办
  • 携程网站建设计划管理与进度控制seo流量增加软件
  • 网站域名分类营销qq官网
  • 广东建设执业资格中心网站手游推广赚佣金的平台
  • 做网站激励语优书网
  • 唯品会网站建设建议图片外链
  • ftp网站上传 方法5118大数据平台官网
  • 新有码视频一区三区网站seo运营
  • 网站制作电话多少免费观看短视频的app软件推荐
  • 网络违法犯罪网站举报2022年seo最新优化策略
  • 网站建设要求 优帮云海南seo排名优化公司
  • 国内用什么做网站营销推广的工具有哪些
  • 互联网公司全名北京seo关键词优化外包
  • asp网站如何安装产品如何做网络推广
  • 做设计的网站定制网站搭建公司
  • 北京网站制作的公司东莞有限公司seo
  • 网站做页游推广查域名备案信息查询
  • 采票网站刷流水做任务百度人工服务热线
  • 如何做后台网站增删改好用的磁力搜索引擎
  • 网上做批发的网站有哪些免费学生网页制作成品代码
  • 网站建设英文方案青岛运营网络推广业务
  • 国外注册网站做百度seoseo外包公司
  • 佛山搜索seo优化排名免费网站推广优化
  • 微信公众号平台客服电话上海专业seo服务公司
  • 南京做南京美容整形网站搜索引擎广告的优缺点
  • wordpress防爆破插件广州aso优化
  • seo网站打开慢百度搜索结果
  • 企业网站不付服务费应该怎么做中国百强城市榜单
  • 武汉网站建设哪里好百度推广费用可以退吗
  • 电子商务网站功能需求关键字排名优化工具