比较两个数组,输出不同的元素,相同的元素是什么(求数组的交集和差集)
一个数组中存在方法,如何将数组的元素深拷贝到另一个数组
深拷贝:用于嵌套数组或对象,
浅拷贝:只拷贝引用类型的第一层数据,下层数据改变,会影响原数组
...解构属于浅拷贝
如何判断一个对象是否是空对象
是否为一个空对象、空数组、空字符串
如何深拷贝一个函数
- structuredClone() :2022 年引入的一个全局函数
- lodash 的_.cloneDeep()
- 递归复制
删除数组中指定的元素
替换字符串中的指定内容为自己定义的内容
对象数组,删除所有对象元素的指定属性
方法 | 是否删除属性 | 性能 | 适用场景 |
---|---|---|---|
delete | ✔️ | 较慢 | 需彻底移除属性 |
解构赋值创建新对象 | ❌(新建对象) | 快 | 不修改原数据时 |
设置 undefined | ❌(保留键) | 最快 | 仅需隐藏属性值 |
对象数组,删除符合条件的对象元素
对象数组去重的方法
两数组合并并去重
连接数组中指定元素,为字符串
对象数组转换为键值对对象/键值对对象转换为对象数组
示例:[{label:’’,value:’},....’] 转 {label:value} / {label:value} 转 [{label:’’,value:’},....’]
判断表单中属性值是否相等/改变
-
深比较:lodash _.isEqual()
-
浅比较:ES6+
评论区