我可以在变量中声明可选值

时间:2017-03-23 06:27:00

标签: javascript html



var x = aa || 3 || dd;
document.getElementById("demo").innerHTML = x;

<h1>JavaScript Variables</h1>


<p id="demo"></p>
&#13;
&#13;
&#13;

我希望使用可选值

创建变量
var a = x || b || 2

如果x未定义,则应打印x的值,依此类推

4 个答案:

答案 0 :(得分:2)

aa未在您的问题中定义

定义 var aa = 0; (or) var aa = null; (or) var aa = ''; (or) var aa = undefined;将打印3。

&#13;
&#13;
var aa = 0;
var x = aa || 3 || dd;
document.getElementById("demo").innerHTML = x;
&#13;
<h1>JavaScript Variables</h1>


<p id="demo"></p>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

除非xb为假值,否则您的解决方案将有效。与x === ''b === 0一样,a将设置为2

如果要将var a = typeof x === 'undefined' ? (typeof b === 'undefined' ? 2 : b) : x设置为第一个定义的值,则可以执行a之类的操作。

答案 2 :(得分:0)

使用try catch

&#13;
&#13;
var a=0;
try {
  //  a= x || b || 2;
   a = typeof x === 'undefined' ? (typeof b === 'undefined' ? 2 : b) : x
  alert(a);
}
catch(err) {
 alert("Error Occured "+err);
}
&#13;
&#13;
&#13;

答案 3 :(得分:0)

var a = (x > 0)? x : (if(b > 0) ? b : 2);

这里代替未定义我使用0作为条件 如果x> 0然后x其他b> 0然后b其他2