当前位置: 首页 > 面试题库 >

JavaScript中的指针?

顾烨磊
2023-03-14
问题内容

我们可以传递不可变的变量引用作为函数中的参数吗?

例:

var x = 0;
function a(x)
{
    x++;
}
a(x);
alert(x); //Here I want to have 1 instead of 0

问题答案:

由于JavaScript不支持通过引用传递参数,因此您需要将变量设置为对象:

var x = {Value: 0};



function a(obj)

{

    obj.Value++;

}



a(x);

document.write(x.Value); //Here i want to have 1 instead of 0

在这种情况下,x是对对象的引用。当x传递给函数时a,该引用将复制到obj。因此,objx内存中的引用相同。改变Value财产的性质obj影响Value财产的性质x

Javascript将始终按值传递函数参数。那只是语言的规范。您 可以x在两个函数都本地的作用域中创建,而根本不传递变量。



 类似资料:
  • 问题内容: 我以前使用过C ++,并且意识到指针非常有用。javascript中有没有像指针一样的东西?javascript是否有指针?我想使用类似以下内容的指针: 我知道这是一个非常简单的示例,我可以使用,但是在几个更复杂的示例中,我发现指针非常有用。有任何想法吗? 问题答案: 不,JS没有指针。 通过传递 引用 的 副本 来传递对象。程序员无法访问任何表示对象地址的类似C的“值”。 在一个函数

  • 问题内容: 有一些流行的递归角度指令Q&A,它们都归结为以下解决方案之一: 第一个 问题是,除非您全面地管理手动编译过程,否则无法删除以前编译的代码。 第二种方法 的问题是……不是指令,而是失去了其强大的功能,但是更紧迫的是,不能像指令一样对它进行参数化;它只是绑定到新的控制器实例。 我一直在手动执行an 或in link函数,但这给我留下了手动跟踪要删除和添加的元素的问题。 有没有一种好的方法来

  • 问题内容: 我有一个关于在嵌套函数方案中如何处理“ this”指针的问题。 假设我将以下示例代码插入到网页中。当我调用嵌套函数“ doSomeEffects()”时出现错误。我检查了Firebug,它表明当我使用该嵌套函数时,“ this”指针实际上指向全局“ window”对象,这是我所没有想到的。我一定不能正确理解某些东西,因为我认为自从我在对象的函数中声明了嵌套函数以来,它就应该具有相对于该

  • 问题内容: 您如何使用JavaScript进行指数运算? 就像您将如何做12 ^ 2? 问题答案: Math.pow():

  • 本文向大家介绍javascript中setTimeout使用指南,包括了javascript中setTimeout使用指南的使用技巧和注意事项,需要的朋友参考一下 javascript中setTimeout使用指南 以上所述就是本文的全部内容了,希望大家能够喜欢。

  • 本文向大家介绍对JavaScript中this指针的新理解分享,包括了对JavaScript中this指针的新理解分享的使用技巧和注意事项,需要的朋友参考一下 一直以来对this的理解只在可以用,会用,却没有去深究其本质。这次,借着《JavaScript The Good Parts》,作了一次深刻的理解。(所有调试都可以在控制台中看到,浏览器F12键) 下面我们一起来看看这个this吧。 在我们