vue计算属性里面获取的三个数组如何放到一个数组中

vue计算属性里面获取的三个数组如何放到一个数组中,第1张

Vue 将被侦听的数组的变更方法进行了包裹,所以它们也将会触发视图更新。这些被包裹过的方法包括:push()

pop()

shift()

unshift()

splice()

sort()

reverse()

以上七个数组都会改变原数组,下面来分别讲解它们的区别:var list = [3,4,5,6]

1. push() 向数组的尾部添加若干元素,并返回数组的新长度;

list.push(7,8) //返回数组的长度6

list //list=[3,4,5,6,7,8]

2. pop() 从数组的尾部删除一个元素(删且只删除一个元素),返回被删除的元素

list.pop() //返回删除的数组6

list //list=[3,4,5]

3. unshift() 向数组的头部添加若干元素,返回数组的新长度

list.unshift(1,2) //返回数组的长度6

list //list=[1,2,3,4,5,6]

4. shift() 从数组的头部删除一个元素(删且只删除一个元素),返回被删除的元素

list.shift() //返回删除的元素3

list //list=[4,5,6]

ps:pop()和shift()方法不接受传参,传参了也没有什么用

空数组可以删除,不报错,但返回undefined

5. splice() 该方法有如下3种用法:删除 —— 可以删除任意数量的项,只需要指定2个参数:要删除的第一项的位置和要删除项的项数。

插入 —— 可以向指定位置插入任意数量的项,只需要提供3个参数:插入起始位置、0(要删除的项数)和要插入的项。 如果要插入多个项,可以再传入第四、第五,一直任意多个项。

替换 —— 可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需要指定3个指定参数:起始位置、要删除的项数和要插入的任意数量项。 插入的项数是不必与删除的项数相等。

var colors = ["red", "green", "blue"]

var removed = colors.splice(0,1)//删除第一项

alert(colors)//green,blue

alert(removed)//red,返回数组中值包含一项

removed = colors.splice(1, 0, "yellow", "orange")//从位置1开始插入两项

alert(colors)//green,yellow,organge,blue

alert(removed)//返回的是一个空数组

removed = colors.splice(1, 1, "red", "purple")//插入两项,删除一项

alert(colors)//green,red,purple,orange,blue

alert(remove)//yellow, 返回的数组中只包含一项

6. sort() 该方法用于对数组的元素进行排序

list:["George","John","Thomas","James","Adrew","Martin"];

list.sort()//["Adrew", "George", "James", "John", "Martin", "Thomas"]

ps: 因为sort()排序默认的是根据字符串UniCode码进行排序,所以如果要对数字进行排序的话,参数要传递一个比较函数

list:["100","24","489","22","307","6"];

sortNumber(a,b){

return a-b

};

list.sort(sortNumber) //["6", "22", "24", "100", "307", "489"]

7. reverse() 该方法用于颠倒数组中元素的顺序

list:["kwz","John","Thomas","James","Adrew","Martin"]

list.reverse()//["Martin", "Adrew", "James", "Thomas", "John", "kwz"]

1. 有时候我们会碰到这种情况:比如我们渲染一个table,从后端返回的数组里面并没有我们想要的字段,如果让后台帮忙加上的话,会增加冗余字段,这样会增加后端的维护成本,并不可取。

2. 我们可以通过 this.$set 来增加一个字段比如:

                    const lists = res.data // 后端返回数组

                    this.tableData = lists.map(i =>{

                        this.$set(i, edit , false)

                        return i

                    })

3. 更详细的可以去查看官方文档, ps:Vue官网转了好久打不开。。。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11614303.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存