一个空对象,一个字符串"a,b,c",一个值5
实现res的效果(不使用迭代)
个人思考为:想实现层层嵌套在不代为处理接收值得情况下,应该用从里到外对象层层赋值得方法,即将c:5赋值给b再赋值给a
但是在for循环赋值的时候没有找到正确的使用变量作为键值的写法
后意识到这种写法会将arr识别为固定的字符串
改为
下面展示一些 内联代码片
。
let obj = {}
let str = "a,b,c"
let value = 5
let arr = str.split(",");
for (let index = arr.length-1; index >=0; index--) {
if (index==arr.length-1) {
obj={
[arr[index]]:5
}
}else{
obj={
[arr[index]]:obj
}
}
console.log(arr[index],13);
console.log(obj,14);
/*
c 13
{ c: 5 } 14
b 13
{ b: { c: 5 } } 14
a 13
{ a: { b: { c: 5 } } } 14
*/