变量是否具有属性?
显而易见的答案应该是否定的。如果我尝试将属性分配给变量,则应该给出错误。正确?
如果我这样做:
var someVariable = 'Cat';
someVariable.eyes = 'two'; //Gives no error!
alert(someVariable.eyes); // alerts 'undefined' instead of giving an error!
答案 0 :(得分:3)
变量没有属性,但是值没有。 (如果值是一个对象,无论如何。)
在这种情况下,您尝试设置eyes
当前引用的字符串的someVariable
属性。
答案 1 :(得分:1)
“变量”实际上并不存在(除了严格地在范围的定义内),只有对象。并且字符串对象默认情况下不能分配任意属性。