JavaScript新手求助:Uncaught ReferenceError: country未定义问题
问题解答:ReferenceError: country is not defined
哈哈,控制台可没出错哦~这是刚接触JavaScript对象时超容易踩的小坑,完全不用慌😉
问题原因
你定义的country并不是一个独立的全局变量,它是嵌套在people对象里的属性。JavaScript里,直接写变量名(比如country)时,会去全局作用域找这个变量,但你的country只属于people这个对象的内部属性,所以JS找不到它,就抛出了ReferenceError。
正确的访问方式
要访问对象内部的属性,得通过对象本身来获取,常用两种写法:
- 点符号访问(最常用):
// 打印整个country对象 console.log(people.country); // 打印country里的name属性 console.log(people.country.name); // 打印country里的city属性 console.log(people.country.city); - 方括号符号访问:
这种写法适合属性名包含特殊字符、或者用变量来指定属性名的场景:console.log(people['country']); console.log(people['country']['city']);
补充小提示
如果以后再遇到类似的ReferenceError,先检查一下:你要访问的变量是不是某个对象的属性?有没有正确通过对象来引用它~
内容的提问来源于stack exchange,提问作者Bryan Lopez
相关产品推荐
相关产品推荐

