遇到了这样的设计需求,多维对象,且属性名为数字,用变量就定义失败,不用变量就行。当year、month、day为变量的时候就无法定义
你对js数组对象是不是有什么错误理解?
{
year:2019
}
这样的year只是一个下标,跟
‘year’:2019
是一样的,这里的year不会是一个变量,只是对象中的下标,或者属性。
若想把year变成变量那样,可以使用析构符号,
[`${year}`]:2019
或者
[year]:2019
我这边试了下,没有问题啊
额, 你没理解Rimifon说的, 其实用[]就好了.{[y]:{[m]:{[d]:{now}}}}
mark
var m = new Date().getMonth();
var obj = { [m] : m };
console.log(obj);