我在访问函数定义中的字段(变量)时遇到问题。我的问题是这段代码:
<script>
function test(){ var book= [];}
var arrs = test();
alert(arrs.book);
</script>
它给了我“未定义”,为什么?我希望它是一个空值。有什么方法可以访问 arrs
中的这个 book
数组变量吗?
最佳答案
arrs
未定义,因为 test()
不返回任何内容。该函数所做的只是在本地声明一个变量,然后结束,因此本地变量只是超出了范围,什么也没有发生。
根据用法,您似乎希望函数返回一个对象?:
function test() {
return { book: [] };
}
或者也许函数本身应该构造一个对象,而您打算使用 new
调用它?:
function test() {
this.book = [];
}
var arrs = new test();
关于javascript - 访问 JavaScript 函数中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47106238/