Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript中的按值赋值_Javascript_Firefox Addon_Pass By Value - Fatal编程技术网

Javascript中的按值赋值

Javascript中的按值赋值,javascript,firefox-addon,pass-by-value,Javascript,Firefox Addon,Pass By Value,我想将DOM树的一部分分配给全局变量,这样就不再引用我的变量和DOM树了。DOM树的一部分应该复制到全局变量,当我更改DOM树时,它不应该更改我的变量。 正常的分配不能做到这一点 使用代码片段进行澄清: var children; var Test { x: function(e) { ... children = e.target.ownerDocument.getElementsByTagName('body')[0].childNodes; // rowX ... e.target.o

我想将DOM树的一部分分配给全局变量,这样就不再引用我的变量和DOM树了。DOM树的一部分应该复制到全局变量,当我更改DOM树时,它不应该更改我的变量。 正常的分配不能做到这一点

使用代码片段进行澄清:

var children;

var Test {

x: function(e) {
...
children = e.target.ownerDocument.getElementsByTagName('body')[0].childNodes; // rowX
...
e.target.ownerDocument.getElementsByTagName('body')[0].innerHTML = somethingElse; // rowY

}

}
问题是我想在
children
variable(rowX)中存储一些东西,而rowY将更改
children
变量作为副作用,因此DOM树还有一些参考

感谢您的提示

这个假定的DOM的“按值”部分到底在哪里

您可以尝试通过jQuery完成类似的任务:

var chunkByVal = $("#bigChunkOfDOM").html();
DOM的“按值”部分到底在哪里

您可以尝试通过jQuery完成类似的任务:

var chunkByVal = $("#bigChunkOfDOM").html();

如果您使用jquery,这是非常容易的。只要抓住你的元素并克隆它

var backupDom = $("#id").clone(true);

如果您使用jquery,这是非常容易的。只要抓住你的元素并克隆它

var backupDom = $("#id").clone(true);

在这种情况下,您可能需要使用
cloneNode(deep:Boolean)
方法:

var myVar = myNode.cloneNode(true);

在这种情况下,您可能需要使用
cloneNode(deep:Boolean)
方法:

var myVar = myNode.cloneNode(true);

对不起,但是什么?问题是什么?标题与你所写问题的主体有什么关系?你试过什么吗?出了什么问题?什么不起作用?你对此做过任何研究吗。。。我不想表现得好斗,但我不清楚你的问题,也没有任何建议你自己努力解决这个问题。大卫·托马斯我补充道:“我还没有投票决定是否结束,但我建议你先阅读,然后编辑/澄清你提出的问题。”。如果你对这个问题感兴趣,只要问一下什么不清楚,我会让我的问题变得更好。对不起,但是什么?问题是什么?标题与你所写问题的主体有什么关系?你试过什么吗?出了什么问题?什么不起作用?你对此做过任何研究吗。。。我不想表现得好斗,但我不清楚你的问题,也没有任何建议你自己努力解决这个问题。大卫·托马斯我补充道:“我还没有投票决定是否结束,但我建议你先阅读,然后编辑/澄清你提出的问题。”。如果你对这个问题感兴趣,只需问什么不清楚,我会让我的问题变得更好。我不认为他在使用jQuery。我不认为他在使用jQuery。链接到。+1还需要注意的是,
childNodes
返回一个活动列表。链接到。+1还需要注意的是,
childNodes
返回一个活动列表。这是非常重要的如果不使用jQuery;,也非常容易)如果不使用jQuery;,也非常容易。)