【VUE】数组
【VUE】常用函数
转载:https://www.cnblogs.com/yangchongxing/p/10637087.html
目录
==================================================
1、变异方法
2、替换数组
3、修改数组
==================================================
1、变异方法
push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
this.items.push({msg:'n1'})
this.items.push({msg:'n1'},{msg:'n2'})
pop() 方法用于删除并返回数组的最后一个元素。
this.items.pop()
unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。
this.items.unshift({msg:'n1'})
this.items.unshift({msg:'n1'},{msg:'n2'})
shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。
this.items.shift()
splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。
splice(length) 设置长度
splice(index, len, [item])
添加,在索引1的位置
this.items.splice(1,0,{msg:'n1'})
this.items.splice(1,0,{msg:'n1'},{msg:'n2'})
删除,从索引1开始,删除2个含索引
this.items.splice(1,2)
替换,从索引1开始,替换1个含索引
this.items.splice(1,1,{msg:'n'})
this.items.splice(1,2,{msg:'n'}) 替换2个
sort() 方法用于对数组的元素进行排序。按照字符编码默认从小到大排序
默认字母排序
this.items.sort()
reverse() 方法用于颠倒数组中元素的顺序。
this.items.reverse()
1、替换数组
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
this.items.filter(function (item) {
return item.message.match(/Foo/)
})
concat() 方法用于连接两个或多个数组。
this.items.concat([{message:'JJ'},{message:'BB'}])
slice() 方法可从已有的数组中返回选定的元素。
this.items.slice(开始索引, 结束索引) 结束索引不包含
this.items.slice(开始索引) 从开始到结尾
索引为负数时,数组长度加上负数索引就是使用的索引
3、修改数组
this.items[1] = { message: 'Bar m' } 修改不响应
解决方式,一下三种都可以
Vue.set(this.items, 1, { message: 'Bar11' })
vm.$set(this.items, 1, { message: 'Bar22' })
this.items.splice(1, 1, { message: 'Bar33' })
this.items.length = 2 修改不响应
解决方式
this.items.splice(2)
其他
split() 方法用于把一个字符串分割成字符串数组
【VUE】数组的更多相关文章
- [one day one question] Vue数组变更不能触发刷新
问题描述:Vue数组变更不能触发刷新,特别是数组的每个元素都是对象的时候,对象中某个属性的值发生变化,根本无法触发Vue的dom刷新,这怎么破? 解决方案:this.$set(array, index ...
- vue 数组渲染问题
vue 数组渲染问题 问题一: 用v-for循环渲染数组数据时,数据更新了,视图却没有更新 由于 JavaScript 的限制, Vue 不能检测以下变动的数组: 1. 当你利用索引直接设置一个项时, ...
- vue数组变异方法
Vue数组变异方法,会改变被这些方法调用的原始数组,将会触发视图更新 push() 接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度 pop() 从数组末尾移除最后一项,减少数组的 ...
- Vue数组更新及过滤排序
前面的话 Vue为了增加列表渲染的功能,增加了一组观察数组的方法,而且可以显示一个数组的过滤或排序的副本.本文将详细介绍Vue数组更新及过滤排序 变异方法 Vue 包含一组观察数组的变异方法,它们将会 ...
- vue 数组 新增元素 响应式原理 7种方法
1.问题 思考一个问题,以下代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" ...
- vue 数组更新 this.$set(this.dataList, data.index, data.data)
vue 数组更新 this.$set(this.dataList, data.index, data.data) https://www.cnblogs.com/huangenai/p/9836811 ...
- vue 数组和对象渲染问题
vue 数组和对象渲染问题 最近项目有点忙碌,遇到好多问题都没有总结(╥﹏╥),在开发过程中,取vuex中的数组渲染完成之后,再次修改数组的值,数据更新了,但是视图并没有更新.以为是数组更新的问题,后 ...
- vue 数组对接字符串 传值时候,join(',') 一下 watch
vue 数组对接字符串 传值时候,join(',') 一下 watch watch: { 'tFill.otherDescArr': function (newVal, oldVal) { this. ...
- vue数组更新界面无变化
1. vue数组更新界面无变化 1.1. 说明 对数组进行更新或者添加,一定要注意方式,我的情况是数组套数组,双重循环,在造数据的时候,不断从尾部添加数据,所以写成了如下形式,每次下拉都会去加载一批相 ...
- WTF!! Vue数组splice方法无法正常工作
当函数执行到this.agents.splice()时,我设置了断点.发现传参index是0,但是页面上的列表项对应的第一行数据没有被删除, WTF!!! 这是什么鬼!然后我打开Vue Devtool ...
随机推荐
- nyoj 813-对决 (i*j == k)
813-对决 内存限制:64MB 时间限制:1000ms 特判: No 通过数:11 提交数:23 难度:0 题目描述: Topcoder 招进来了 n 个新同学,Yougth计划把这个n个同学分成两 ...
- ENS中文文档系列之一 [ ENS介绍 ]
前言 ENS中文文档是由我照ENS英文官方文档翻译而来,其中的一些内容和细节得到了ENS官方团队的指导.文档中包含 “LBB译注” 的地方是译者为了便于读者理解而进行的注释. 未来一段时间,我会在该博 ...
- 分析facebook的AsyncDisplayKit框架中的Transaction的工作原理
在AsyncDisplayKit框架中有一个_ASAsyncTransaction模块,用于AsyncDiplayNode的异步事务,使用了dispatch_group实现. 主要目的是将operat ...
- Charles 笔记
一. Charles工作原理 本质就是一个http抓包分析工具,在工作的时候将charles设置成代理服务器,所有网络请求都会经过Charles,这样就实现了网络封包的截取和分析. 主要功能 截取ht ...
- Flex带CheckBox的Tree(修改ItemRenderer)
此文代码参考了:http://summerofthatyear-gmail-com.iteye.com/blog/326302 在此表示感谢! 前文提到了,实现带CheckBox的Tree有两种方法: ...
- alpha week 2/2 Scrum立会报告+燃尽图 01
此作业要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/9798 一.小组情况 队名:扛把子 组长:迟俊文 组员:宋晓丽 梁梦瑶 韩昊 ...
- 使用node.js开发一个生成逐帧动画小工具
在实际工作中我们已经下下来不下于一万个npm包了,像我们熟悉的 vue-cli,react-native-cli 等,只需要输入简单的命令 vue init webpack project,即可快速帮 ...
- Java基础IO类之缓冲流
首先要明确一个概念: 对文件或其他目标频繁的读写操作,效率低,性能差. 使用缓冲流的好处是:能够高效的读写信息,原理是先将数据先缓冲起来,然后一起写入或者读取出来. 对于字节: BufferedInp ...
- Tab Bar Control 的封装和切换
见视频0414 思路: 1.删除系统自带的TabBar.2.添加UIView,做成自定义的TabBar,覆盖原来的TabBar.3.添加对于的button和切换事件.
- 本地存储常用方式 localStorage, sessionStorage,cookie 的区别 和 服务器存储session
本地存储:把一些信息存储到客户端本地(主要目的有很多,其中有一个就是实现多页面之间的信息共享) 1. 离线缓存(xxx.manifest) H5处理离线缓存还是存在一些硬伤的,所以真实项 ...