「这是我参与2022首次更文挑战的第18天,活动详情查看:[2022首次更文挑战]
深拷贝和浅拷贝
1.什么是深拷贝,什么是浅拷贝?
深拷贝: 将数据完完整整的拷贝一份,包括这个数据里的子数据。修改当前数据不会影响其他的。(独立的:相当于买的)
浅拷贝: 拷贝引用,地址。如果修改其中的数据,另一个里的数据也会改变。(指向同一个:相当于借的)
2.哪些是深拷贝?哪些是浅拷贝?
(1)深拷贝:递归,JSON,第三方库:jq中的$extend(),遍历,数组中的slice和conat
(2)浅拷贝:=赋值,展开运算符,Object.assign
3.什么情况下会用深拷贝或浅拷贝?
深拷贝:
(1)想要修改数据,但是不想改变原数据时候
浅拷贝:
(1)数据共享的时候
vue里的修饰符有哪些?
1.事件修饰符:
(1)prevent:阻止默认行为
默认事件指对DOM的操作会引起自动执行的动作 例如: 点击超链接的时候会进行页面的跳转, 点击表单提交按钮时会重新加载页面等,
(2)stop:阻止冒泡(通俗讲就是阻止事件向上级DOM元素传递)
(3)self:只有点击当前元素才会触发。(变相的算阻止事件冒泡)
(3)once:只执行一次(这个事件只允许执行一次)
(4)keyCode:监听键盘的指令。
2.v-model修饰符: (a).number:双向绑定给变量时转成数字型。保留小数,相当于parseFloat()
(b).trim 双向绑定的时候,去除空白字符
(c).lazy:change时触发,不会实时同步,失去焦点才同步数据
3.按键修饰符:
回车修饰符:enter
ESC修饰符:esc
键盘上的tab键:.tab
可以同时捕获删除键和退格键:.delete
按键修饰符只能给键盘事件使用