Vue数组响应式操作及高阶函数使用代码详解


Posted in Javascript onAugust 01, 2020

组的响应式操作

//this.letters.push('123');//在末尾添加一个元素

//this.letters.pop();//从末尾删除一个元素
//this.letters.unshift('111');//在开端添加一个元素
//this.letters.shift();//从开端删除一个元素
//this.letters.splice(1,2);//从下标为1的元素开始删除两个元素
//this.letters.splice(1,2,'777','888');//从下标为1的元素开始删除两个元素,并插入一个新元素
//this.letters.splice(1, 0, '777', '888'); //在下标为1处插入两个元素
//this.letters.splice(2);//保留前2个元素,其他的删除掉

高阶函数

1、filter过滤函数

filter也是一个常用的操作,它用于把Array的某些元素过滤掉,然后返回剩下的元素。

filter把传入的函数依次作用于每个元素,然后根据返回值是true还是false决定保留还是丢弃该元素。

const nums = [2,3,5,1,77,55,100,200];
let newArray = nums.filter(function (n) {
  //小于100就是true,进入newArray数组
  return n < 100;
})
console.log(newArray);//[2,3,5,1,77,55]

2、map高阶函数

map函数同样会遍历数组每一项,传入回调函数为参数,num是map遍历的每一项,回调函数function返回值会被添加到新数组中

const nums = [2,3,5,1,77,55,100,200];
let newArray = nums.filter(function (n) {
  //小于100就是true,进入newArray数组
  return n < 100;
})
console.log(newArray);//[2,3,5,1,77,55]

3、reduce高阶函数

reduce函数同样会遍历数组每一项,传入回调函数和‘0'为参数,0表示回调函数中preValue初始值为0,回调函数中参数preValue是每一次回调函数function返回的值,currentValue是当前值

const nums = [2,3,5,1,77,55,100,200];
let new3Array = nums.reduce(function (preValue,currentValue) {
  //数组为[2,3,5,1,77,55,100,200],则回调函数第一次返回值为0+2=2,第二次preValue为2,返回值为2+3=5,以此类推直到遍历完成
  return preValue+currentValue;
},0);//第二个参数0是preValue的初始值
console.log(new3Array);//443

4、sort排序算法

因为Array的sort()方法默认把所有元素先转换为String再排序,结果'10'排在了'2'的前面,因为字符'1'比字符'2'的ASCII码小。如果不知道sort()方法的默认排序规则,直接对数字排序,绝对栽进坑里!

//要按数字大小排序,我们可以这么写:
var arr = [10, 20, 1, 2];
arr.sort(function (x, y) {
  if (x < y) {
    return -1;
  }
  if (x > y) {
    return 1;
  }
  return 0;
}); // [1, 2, 10, 20]

//如果要倒序排序,我们可以把大的数放前面:
var arr = [10, 20, 1, 2];
arr.sort(function (x, y) {
  if (x < y) {
    return 1;
  }
  if (x > y) {
    return -1;
  }
  return 0;
}); // [20, 10, 2, 1]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
做网页的一些技巧(续)
Feb 01 Javascript
关于viewport,Ext.panel和Ext.form.panel的关系
May 07 Javascript
jquery 笔记 事件
Nov 02 Javascript
Javascript 正则表达式实现为数字添加千位分隔符
Mar 10 Javascript
js获取当前日期时间及其它操作汇总
Apr 17 Javascript
JS闭包、作用域链、垃圾回收、内存泄露相关知识小结
May 16 Javascript
Javascript 函数的四种调用模式
Nov 05 Javascript
3分钟掌握常用的JS操作JSON方法总结
Apr 25 Javascript
微信小程序wx.previewImage预览图片实例详解
Dec 07 Javascript
微信小程序实现滴滴导航tab切换效果
Jul 24 Javascript
记一次webapck4 配置文件无效的解决历程
Sep 19 Javascript
JS常用排序方法实例代码解析
Mar 03 Javascript
vue 组件简介
Jul 31 #Javascript
three.js 制作动态二维码的示例代码
Jul 31 #Javascript
vue+vuex+axios从后台获取数据存入vuex,组件之间共享数据操作
Jul 31 #Javascript
vue抽出组件并传值实例
Jul 31 #Javascript
Vue通过Blob对象实现导出Excel功能示例代码
Jul 31 #Javascript
Vue.js中使用Vuex实现组件数据共享案例
Jul 31 #Javascript
原生JS实现记忆翻牌游戏
Jul 31 #Javascript
You might like
一个分页的论坛
2006/10/09 PHP
function.inc.php超越php
2006/12/09 PHP
PHP并发多进程处理利器Gearman使用介绍
2016/05/16 PHP
Prototype1.5 rc2版指南最后一篇之Position
2007/01/10 Javascript
javascript Xml增删改查(IE下)操作实现代码
2009/01/30 Javascript
javascript multibox 全选
2009/03/22 Javascript
JQuery学习笔记 nt-child的使用
2011/01/17 Javascript
js下将阿拉伯数字每三位一逗号分隔(如:15000000转化为15,000,000)
2014/06/02 Javascript
原生JavaScript实现合并多个数组示例
2014/09/21 Javascript
javascript 面向对象封装与继承
2014/11/27 Javascript
对JavaScript客户端应用编程的一些建议
2015/06/24 Javascript
简单实现限制uploadify上传个数
2015/11/16 Javascript
实现一个简单的vue无限加载指令方法
2017/01/10 Javascript
jQury Ajax使用Token验证身份实例代码
2017/09/22 Javascript
使用D3.js创建物流地图的示例代码
2018/01/27 Javascript
Three.js实现简单3D房间布局
2018/12/30 Javascript
layui 弹出层回调获取弹出层数据的例子
2019/09/02 Javascript
在layui框架中select下拉框监听更改事件的例子
2019/09/20 Javascript
Element Badge标记的使用方法
2020/07/27 Javascript
Python Tkinter实现简易计算器功能
2018/01/30 Python
python3 破解 geetest(极验)的滑块验证码功能
2018/02/24 Python
python表格存取的方法
2018/03/07 Python
使用Python从零开始撸一个区块链
2018/03/14 Python
python爬虫之模拟登陆csdn的实例代码
2018/05/18 Python
Django中反向生成models.py的实例讲解
2018/05/30 Python
Python2与Python3的区别实例总结
2019/04/17 Python
Python2.7实现多进程下开发多线程示例
2019/05/31 Python
python pip源配置,pip配置文件存放位置的方法
2019/07/12 Python
Python字符串格式化常用手段及注意事项
2020/06/17 Python
通过实例解析Python文件操作实现步骤
2020/09/21 Python
python help函数实例用法
2020/12/06 Python
英国时尚服饰电商:Boohoo
2017/10/12 全球购物
美国家居装饰和豪华家具购物网站:One Kings Lane
2018/12/24 全球购物
申请任职学生会干部自荐书范文
2014/02/13 职场文书
2014全国两会大学生学习心得体会
2014/03/10 职场文书
充分就业社区汇报材料
2014/05/07 职场文书