javascript - 如何使用嵌套的 'with' 关键字

标签 javascript

我可以同时对多个对象使用“with”关键字吗?我试图嵌套它们,但失败了。那么执行此操作的最佳方法应该是什么?

var firstVariable ={a: 0, b: 0, c:0};
var secondVariable ={qw :98, ety :367, hg: 356};

with(firstVariable){
    with(secondVariable){  
        a = qw;
        b = ety;
        c = hg;
    }
}

最佳答案

不,第二个 with 将范围更改为 secondVariable 并且您无法访问第一个。 它将像 Drew Larson 一样工作显示,但你不应该这样做。

with 无论如何都不推荐,应该使用临时变量来代替,因此示例代码将以这种方式编写(假设 firstVariablesecondVariable 太麻烦了,你不想只做 firstVariable.a = secondVariable.qw):

var firstVariable ={a: 0, b: 0, c:0};
var secondVariable ={qw :98, ety :367, hg: 356};

var o1 = firstVariable;
var o2 = secondVariable;

o1.a = o2.qw;
o1.b = o2.ety;
o1.c = o2.hg;

关于javascript - 如何使用嵌套的 'with' 关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15354598/

相关文章:

javascript - 通过 json 到 Ajax post 将回发转换为 PHP

javascript - 尝试使用 AJAX 将 JavaScript 变量传递给 PHP,但得到 'Undefined index'

javascript - jQuery TestSwarm 的现状?

javascript - 一个 canvas 元素可以嵌套多少个 div 有限制吗?

javascript - 为什么 (0 || eval) 在 Opera 中不被视为间接?

javascript - 显示数据 ArrayList (EJB + Servlet + JSP(JSTL)) 到 JavaScript ArrayList

javascript - Google Analytics 更新为跟踪 2 个 ID,但未按预期工作

javascript - 为多个图像添加 HTML5 Canvas 黑白效果

javascript - 从事件获取文件时, typescript 对象可能为空

javascript - jqPlot:重叠系列