【经典面试题】delete和Vue.delete的区别
delete和和Vue.delete都是对数组或对象进行删除的方法。这两种方法对于对象来说其实是没有区别的,使用方法会直接删除对象的属性(物理删除)let obj = {name: 'fufu',age: 20}// delete obj.age=> {name: 'fufu'}// Vue.delete(obj, 'age') => {name: 'fufu'}// 测试发现对于对象
·
delete和和Vue.delete都是对数组或对象进行删除的方法。这两种方法对于对象来说其实是没有区别的,使用方法会直接删除对象的属性(物理删除)
let obj = {
name: 'fufu',
age: 20
}
// delete obj.age => {name: 'fufu'}
// Vue.delete(obj, 'age') => {name: 'fufu'}
// 测试发现对于对象来说delete和Vue.delete是没有任何区别的
但是这两种方法对于数组来说就有区别了。
let arr = [1,2,3,4,5]
delete arr[2] //[1,2,empty,4,5]
Vue.delete arr[2] //[1,2,4,5]
delete只是被删除的元素变成了 empty/undefined 其他的元素的键值还是不变。数组长度也不变。(逻辑删) Vue.delete是直接删除该元素,长度发生变化。(物理删)
更多推荐
已为社区贡献1条内容
所有评论(0)