function clone(value) {
if (Array.isArray(value)) {
return value.map(clone)
} else if (value && typeof value === 'object') {
const res = {}
for (const key in value) {
res[key] = clone(value[key])
}
return res
} else {
return value
}
}
js判断数据类型是否为对象
//判断是对象{}并且不是null
function isObject(obj) {
return obj !== null && typeof obj === 'object' && !Array.isArray(obj)
}
//判断是对象{}或null
function isObject(obj) {
return typeof obj === 'object' && !Array.isArray(obj)
}
js判断数据类型是否为数组
function isArray(obj) {
return Array.isArray(obj)
}
js判断对象是空对象{}
obj!==null&&typeof obj === 'object'&&!Object.keys(obj).length