1.对象深度优先遍历和广度优先遍历的实现
如图:
const obj = {
a1: {
a1b1: 1,
a1b2: 2
},
a2: {
a2b1: 3,...', 'a2b1', 'a2b2', 'a2b3']
console.log(depthArr, breadthArr)
2.用深度优先思想实现一个深拷贝函数
深度拷贝最主要需要考虑的因素就是需要考虑js...,循环引用处理可以利用WeakMap将每次递归的对象存储起来,如果一样,直接返回
const obj = {
a1: {
a1b1: 1,
a1b2: 2
},
a2: {..., hash)
continue
}
}
return newObj
}
let cloneObj = depthFirstClone(obj)
3.实现一个LazyMan类,...,该类包含成员方法 add()、all() 和属性 length,要求构造函数和add0方法的参数为动态参数
// 构造函数示例:
var ls = new List('A', 'B','C')
//