javascript - 访问 JavaScript 函数中的字段

标签 javascript web

我在访问函数定义中的字段(变量)时遇到问题。我的问题是这段代码:

<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/

相关文章:

javascript - AngularJS改变 Controller 之间共享的工厂对象

javascript - HTTPS被浏览器取消,我的请求被视为HTTP请求

Flutter Web 网站初始加载需要很长时间

javascript - CSS 不会对齐 <li>

javascript - TypeScript 可更新和枚举引用

javascript - React-native - 使用已转换为 URL 的 Blob 填充图像

javascript - 在 D3 v4 中使用 zoom.translateExtent 限制 map 平移

javascript - Fabric js 剪辑对象到背景图像

html - 需要找到如何创建 float 标题

html - 在 Go 中制作网络应用程序?