一次设置多个JavaScript变量

时间:2018-06-27 17:46:23

标签: javascript

我找到了一些看起来像这样的代码

var v = color.val(), sel_c = (v == '') ? "#234872" : v;

我不确定为什么要这样写,但是我想知道如何阅读。如果我们有

var v = color.val();

var sel_c = (v == '') ? "#234872" : v;

我会明白的。但是,如果用逗号分隔它是什么意思呢?好像我们试图一次或多次设置多个变量一样。

4 个答案:

答案 0 :(得分:1)

是的,完全有效,不必多次写varletconst

const a = 1,
  b = a + 1,
  c = b + 1;
console.log(a, b, c);

相同
const a = 1;
const b = a + 1;
const c = b + 1;

要少写几varletconst

答案 1 :(得分:1)

以下与您发布的代码等效:

var v= color.val();

var sel_c;
if(v==''){
    sel_c="#234872"
}else{
    sel_c=v;
}

至于为什么它是在您发布时编写的-我相信这是为了节省“空间”。用空格表示的不是数据字节,而是代码编辑器中的行。至少那是我总能得到的原因。我个人认为,这样编写的代码即使更紧凑也不太可读。

答案 2 :(得分:1)

comma operator用于分隔多个语句。

在变量赋值的情况下,这只是忽略后续var关键字的一种方法。每个变量都依次设置

答案 3 :(得分:0)

此:

var v = color.val(), sel_c = (v == '') ? "#234872" : v;

等于:

var v = color.val();
var sel_c = (v == '') ? "#234872" : v;

将其写在一行上的唯一好处是您的代码将“更短”。

我个人觉得它丑陋且难以阅读。