var place = "mundo"["Hola", "Ciao"];
为什么返回未定义?只是因为是垃圾?
最佳答案
那是完全有效的JS,尽管它没有达到您的期望。place
初始化为'Ciao'
的String('mundo')
属性。由于不存在,因此将其初始化为undefined
。
棘手的部分:"Hola","Ciao"
使用逗号运算符,计算"Hola"
,计算"Ciao"
并返回"Ciao"
在这种情况下,[...]
是属性访问"mundo"[]
"mundo"
转换为String对象以访问其上的属性。
证明:
var place = "mundo"["Hola", "toString"];
console.log(place) // function toString() { [native code] }
关于javascript - 为什么此变量返回未定义?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19924009/