如何在JavaScript中一次分配多个变量?

时间:2016-07-16 13:43:52

标签: javascript multiple-assignment

有没有办法在JavaScript中执行多个赋值,如下所示:

var a, b = "one", "two";

这相当于:

var a = "one";
var b = "two";

3 个答案:

答案 0 :(得分:24)

在ES6中你可以做到

var [a,b] = ["one" , "two"];

上面的代码是ES6表示法,称为数组解析/对象解构(如果它是一个对象)。

您在表达式的右侧提供数组,并且左侧有方括号包围的逗号分隔变量

第一个变量映射到第一个Array值,依此类推

答案 1 :(得分:0)

虽然您无法执行var a, b = "one", "two";,并且将它们按照各自的顺序分配给每个变量,但您可以var a, b;初始化这些变量undefined

您还可以执行var a, b = 'foo';将b分配给'foo',同时将'a'初始化为undefined

var a, b;

> a
--> undefined
> b
--> undefined
> var d, e;
--> f 
Uncaught ReferenceError: f is not defined

> e
--> undefined
> var c, g = 'foo';

> c
--> undefined
> g
--> "foo"

对象分解

看起来像:

const user = {
  id: 42,
  is_verified: true
};

const {id, is_verified} = user;

console.log(id); // 42
console.log(is_verified); // true 

您还将在JavaScript中将此内容显示为 import members of a module

从模块导入多个导出。这会将foo和bar插入当前作用域。

import {foo, bar} from '/modules/my-module.js';

答案 2 :(得分:-3)

不,你不能这样做。 Javascript不支持此类声明