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

<h1>JavaScript Variables</h1>
<p id="demo"></p>
&#13;
我希望使用可选值
创建变量var a = x || b || 2
如果x未定义,则应打印x的值,依此类推
答案 0 :(得分:2)
aa未在您的问题中定义
定义
var aa = 0; (or)
var aa = null; (or)
var aa = ''; (or)
var aa = undefined;
将打印3。
var aa = 0;
var x = aa || 3 || dd;
document.getElementById("demo").innerHTML = x;
&#13;
<h1>JavaScript Variables</h1>
<p id="demo"></p>
&#13;
答案 1 :(得分:1)
除非x
或b
为假值,否则您的解决方案将有效。与x === ''
和b === 0
一样,a
将设置为2
。
如果要将var a = typeof x === 'undefined' ? (typeof b === 'undefined' ? 2 : b) : x
设置为第一个定义的值,则可以执行a
之类的操作。
答案 2 :(得分:0)
使用try catch
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;
答案 3 :(得分:0)
var a = (x > 0)? x : (if(b > 0) ? b : 2);
这里代替未定义我使用0作为条件 如果x> 0然后x其他b> 0然后b其他2