Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.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中引用的s值?_Javascript_Variables_Variable Assignment - Fatal编程技术网

任何将变量(非对象属性)分配给另一个变量的方法';JavaScript中引用的s值?

任何将变量(非对象属性)分配给另一个变量的方法';JavaScript中引用的s值?,javascript,variables,variable-assignment,Javascript,Variables,Variable Assignment,所以,我需要的是: var a = 5; var b = a; a = 6; alert(b) // I want this to alert 6 not 5 我见过这样的问题,答案和帖子。我不想使用对象/哈希/字典或任何你想称之为它们的东西。我希望使用包含纯原语值的纯变量来完成此操作。类似于PHP引用赋值:$b=&$a。有可能吗?任何接近它的东西?不,从ECMA脚本5开始,这是不可能的。不,这是不可能的。JavaScript中不允许这样做,这是一件好事。不,在JavaScript中不可能传递

所以,我需要的是:

var a = 5;
var b = a;
a = 6;
alert(b) // I want this to alert 6 not 5

我见过这样的问题,答案和帖子。我不想使用对象/哈希/字典或任何你想称之为它们的东西。我希望使用包含纯原语值的纯变量来完成此操作。类似于PHP引用赋值:
$b=&$a。有可能吗?任何接近它的东西?

不,从ECMA脚本5开始,这是不可能的。

不,这是不可能的。JavaScript中不允许这样做,这是一件好事。

不,在JavaScript中不可能传递简单的值作为引用


但是,JavaScript是一种灵活的语言,您可以使用
Object.defineProperty
实现类似的功能,方法是提供setter和getter,它们都将使用相同的变量。这可能适用于
全局
变量,但是,无法完全模仿这种行为。例如,由于无法获得对函数执行范围的引用,因此无法对函数中声明的变量模拟此概念。

不,正如您所看到的,这是不可能的。您可以通过编写一个重新分配“b”的函数来实现这一点;aequal(a){b=a;}