var Color;
(function (Color) {
Color[Color["Red"] = 0] = "Red"; // 这行代码怎么理解?
})(Color || (Color = {}));
console.log(Color); // { '0': 'Red', Red: 0 }
请问这段代码怎么理解?
只能告訴你作用,我也看不懂這麼寫的用意
Color["Red"] = 0 //這個會回傳0
所以
Color[Color["Red"] = 0] = "Red";
就等於
Color[0] = "Red";
炫技吧哈哈,一行代碼賦予color 兩個屬性
对于这行代码
Color[Color["Red"]=0]="Red"
先执行了Color["Red"]=0,对Color对象中的Red属性的属性值初始化为0,此时对象Color为:{Red:0},并且返回值为0
console.log(Color["Red"]=0)
//控制台输出 0
此时代码应执行Color[0]="Red"
所以结果为{'0':'Red',Red:0}
obj.a = obj["a"]