Kay*_*ote 10 javascript variables declaration
这对我来说没有意义,但我有一种感觉,我看到了一个代码使用这个:
var abc = def || ghi;
Run Code Online (Sandbox Code Playgroud)
我的问题是,这有效吗?我们可以为变量声明添加条件吗?我想答案是否定的,但我心里想到的是,我曾在代码中看到类似的东西.
Den*_*ret 17
这得到abc的值def如果不是falsy(即不false,null,undefined,0或空字符串),或的值ghi如果不是.
这相当于:
var abc;
if (def) abc = def;
else abc = ghi;
Run Code Online (Sandbox Code Playgroud)
这通常用于选项:
function myfunc (opts) {
var mything = opts.mything || "aaa";
}
Run Code Online (Sandbox Code Playgroud)
如果你打电话,myfunc({mything:"bbb"})它会使用你给的值."aaa"如果你什么都不提供,它就会用
在这种情况下,为了让调用者完全跳过参数,我们也可以启动函数
opts = opts || {};
Run Code Online (Sandbox Code Playgroud)
代码var abc = def || ghi;
是一样的
if (def) { //where def is a truthy value
var abc = def;
} else {
abc = ghi;
}
Run Code Online (Sandbox Code Playgroud)
你想要一个像if语句的条件?
if (xxx==="apple") {
var abc = def;
} else {
abc = ghi;
}
Run Code Online (Sandbox Code Playgroud)
作为三元运算符编写的是:
var abc = (xxx==="apple") ? def : ghi;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10243 次 |
| 最近记录: |