Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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
通过引用分配var-JavaScript_Javascript_Variables_Operators - Fatal编程技术网

通过引用分配var-JavaScript

通过引用分配var-JavaScript,javascript,variables,operators,Javascript,Variables,Operators,我的问题很简单,但我没有发现像我这样的问题。最接近的是单例模式,但不是我需要的 我会在JavaScript中执行类似的操作: var a = b = c = 0; 因此: c = 3.141516; console.log(b); // 3.141516 console.log(a); // 3.141516 b = 'Hello World'; console.log(c); // 3.141516 console.log(a); // Hello World 在PHP中有一个

我的问题很简单,但我没有发现像我这样的问题。最接近的是单例模式,但不是我需要的

我会在JavaScript中执行类似的操作:

var a = b = c = 0;
因此:

c = 3.141516; 
console.log(b); // 3.141516 
console.log(a); // 3.141516 

b = 'Hello World';
console.log(c); // 3.141516 
console.log(a); // Hello World 
在PHP中有一个运算符=&的工作方式与我所希望的一样。

JavaScript中没有。您将获得的最接近的结果如下所示:

var a = b = c = {};
c.foo = 3.141516;
console.log(a.foo); // 3.141516
console.log(b.foo); // 3.141516

b.foo = 'Hello World';
console.log(a.foo); // 'Hello World'
console.log(b.foo); // 'Hello World'
变量a、b和c都引用同一个对象,因此当您更改该对象上的属性时,对该对象的3个引用都会看到相同的更改

我假设您问题中示例中的console.logc行是复制粘贴错误,您希望它打印“Hello World”,而不是3.141516。

JavaScript中没有。您将获得的最接近的结果如下所示:

var a = b = c = {};
c.foo = 3.141516;
console.log(a.foo); // 3.141516
console.log(b.foo); // 3.141516

b.foo = 'Hello World';
console.log(a.foo); // 'Hello World'
console.log(b.foo); // 'Hello World'
变量a、b和c都引用同一个对象,因此当您更改该对象上的属性时,对该对象的3个引用都会看到相同的更改


我假设您问题中示例中的console.logc行是复制粘贴错误,您希望它打印“Hello World”,而不是3.141516。

您到底想要什么?您到底想要什么?