js数组的深入
1、数组中的哪些方法是响应式的?#
因为Vue是响应式的,所以当数据发生变化时,Vue会自动检测数据变化,视图会发生对应的更新
Vue中包含了一组观察数组编译的方法,使用它们改变数组也会触发视图的更新
1)push方法 ==> 响应式 this.letters.push('F'); 2)pop (删除数组中的最后一个元素) ==> 响应式 this.letters.pop(); 3)shift() 删除数组中的第一个元素 this.letters.shift(); 4)unshift() : 在数组的最前面添加一个元素 5)splice()的作用:删除元素、插入元素、替换元素 删除元素时:splice(start,num) 表示从start开始,删除num个元素。如果不传值,表示删除后面的所有元素 替换元素:splice(start,num,’a','b','c'): 第二个参数表示要替换几个元素,后面的 ‘a','b'表示要替换的元素 插入元素:splice(1,0,'x','y','z') : 第二个参数传入0,表示在第一个元素后面插入‘x','Y','z' 6)sort():对数组进行排序 7)reverse():反转数组 this.letters.reverse(); 8)注意通过索引值来修改数组的元素,不是响应式的 //this.letters[0] = "aaa"; //可以通过以下两种方式解决 this.letters.splice(0,1,"aaa"); Vue.set(this.letters,0,"aaa");
2、JavaScript高阶函数的使用#
1)循环的三种方式 for(let i=0;i<this.books.length;i++){ } for(let i in this.books){ // i 是数组中元素的索引 } for(let item of this.books){ // item 是数组中的元素 } 2)filter的使用 // filter的回调函数有一个要求:必须返回一个boolean值 // 当返回值为true时,函数内部会自动将这次回调的n加入到新的数组中 // 当返回值为false时,函数内部会过滤掉这次的n // 回调函数的参数 n: 遍历过程中,每次遍历到的元素 let newNums = nums.filter(function (n) { return n<100; }) console.log(newNums); 3)map的使用 // 对数组中的所有元素做某个操作,然后放到新的元素中 let newNum2 = newNums.map(function (n) { return n*2; }) console.log(newNum2); 4)reduce的使用 //作用:对数组中的所有内容进行汇总 //reduce(参数一,参数二) 参数一:函数 参数二:初始值 let total = newNum2.reduce(function (preValue,n) { return preValue+n; },0) console.log(total); //第一次:preValue:0 n:20 //第二次:preValue:20 n:40 //第三次:preValue:60 n:60 //第四次:preValue:120 n:80
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?