随笔
使用node.js的process内置模块和fs文件模块创建了建议的命令行工具,能快速创建私人定制的h5项目(使用rem适配 + zepto.js + swiper.js + h5兼容代码)
js
技巧
对象合并技巧
若字段相等则会都被后一个的值覆盖
Object.assign(obj1, obj2)参数为简单类型则深拷贝,引用类型则浅拷贝。{...obj1, ...obj2}
数组转对象:
{...arr}for(var key in arr){obj[key] = arr[key]}
深拷贝
- 判断类型+创建空数据递归赋值(还是最靠谱)
JSON.parse(JSON.strighfy(obj)),若元素有函数等非JSON格式对象,如正则、Error、NaN,则会丢失或出错,Data类型会成为字符串
浅拷贝,除直接赋值外。元素为简单类型则深拷贝,引用类型则浅拷贝,本质上还是浅拷贝
- 对象可用
{...obj}, - 数组可用
[...arr]、new Array(...arr)、Array.from(arr),slice、concat
- 对象可用
