Javascript 为什么'name'变量不出错?
当我试图在js中创建和访问对象的属性时,它使我混淆了未定义的变量:Javascript 为什么'name'变量不出错?,javascript,html,Javascript,Html,当我试图在js中创建和访问对象的属性时,它使我混淆了未定义的变量:name和name\u aaa。有关更多信息,请参阅以下代码: <!DOCTYPE html> <html> <body> <p id="demo">Display the result here.</p> <script> var persion = { name: "GSP", age: 50,
name
和name\u aaa
。有关更多信息,请参阅以下代码:
<!DOCTYPE html>
<html>
<body>
<p id="demo">Display the result here.</p>
<script>
var persion = {
name: "GSP",
age: 50,
show: function() {
document.getElementById("demo").innerHTML = "Hello " + this.name;
/*
Output: Hello GSP
*/
document.getElementById("demo").innerHTML = "Hello " + name;
/*
Output: Hello
It does not show any error.
*/
document.getElementById("demo").innerHTML = "Hello " + name_aaa;
/*
sss.html:21 Uncaught ReferenceError: name_aaa is not defined
at Object.show (sss.html:21)
at sss.html:29
*/
}
};
persion.show();
</script>
</body>
</html>
在此处显示结果
变量person={
名称:“普惠制”,
年龄:50,,
show:function(){
document.getElementById(“demo”).innerHTML=“Hello”+this.name;
/*
输出:你好,普惠制
*/
document.getElementById(“demo”).innerHTML=“Hello”+name;
/*
输出:您好
它没有显示任何错误。
*/
document.getElementById(“demo”).innerHTML=“Hello”+name\u aaa;
/*
sss.html:21未捕获引用错误:未定义名称\u aaa
at Object.show(sss.html:21)
http://sss.html:29
*/
}
};
person.show();
请您解释一下为什么
name
不是错误,但是name\u aaa
会抛出错误?name
是全局窗口。name
@Xufox为什么在“Hello”之后不显示任何内容?@GSP因为窗口。name
默认为空字符串。只需使用(点击F12
)。你可以自己回答这类问题。非常感谢。我知道了。name
是全局窗口。name
@Xufox为什么在“Hello”之后不显示任何内容?@GSP因为window。name
默认为空字符串。只需使用(点击F12
)。你可以自己回答这类问题。非常感谢。我得到了它。