javascript - 如何以对象文字表示法设置和访问变量?

标签 javascript

我正在尝试使用对象文字表示法设置并稍后访问变量。我需要在后续代码中使用此变量,因此我只想在这里设置一次。

当我在 jsFiddle 上运行此代码时,出现 HalfWidth 为 NaN 的错误。如何从这里设置和访问该变量?

var $LIST = {
  FullWidth: 120,
  HalfWidth: this.FullWidth / 2,
  exit: function () {}
};

alert($LIST.FullWidth);
alert($LIST.HalfWidth);

http://jsfiddle.net/7JcaQ/

最佳答案

this 与您的情况零相关 - 它仅定义方法调用的上下文对象。此外,您不能在其自己的定义中引用 $LIST,因为它在定义结束之前不会退出。

写:

var $LIST = {
  FullWidth: 120,
  exit: function () {}
};
$LIST.HalfWidth = $LIST.FullWidth / 2

(注意,您得到的是 NaN,因为在方法调用之外 this 通常引用全局对象,而这自然通常不会引用全局对象其 .FullWidth 属性中包含任何数值。将其除以 2 会产生 NaN。)

关于javascript - 如何以对象文字表示法设置和访问变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15641421/

相关文章:

Javascript if 语句忽略 jQuery $(this)

javascript - 禁用 Csrf 进行 ajax 查询

javascript - 如何将项目添加到 Highcharts 图例?

javascript - 什么是 strophe 以及如何将它与 JQuery 一起使用?

javascript - 按下按键时如何以鼠标位置为中心绘制圆

javascript - 如何使 <iframe> 在 WordPress 中响应。我只能让它在移动设备或桌面设备上响应。需要它在两个方面都能很好地工作

javascript - 未捕获的类型错误 : Cannot read property 'axis' of undefined

javascript - React 卸载子组件的方式是什么?

javascript - 如何从 Express (Node.js) 中的表单获取数据

javascript - 如何将数百个 JS 对象属性放入数组中以用作 Chart.js 轴/数据