共计 984 个字符,预计需要花费 3 分钟才能阅读完成。
咱们平时应用的 &&
||
个别只是用于判断 true
或 false
,其它这两个运算符还有其它作用,它是有返回值的。
&&
的返回值是:最初一个为 ture
的值 ||
的返回值是:第一个为 true
的值
一、性能阐明
1. &&
- 两边条件都为
true
时,后果才为true
; - 如果有一个为
false
,后果就为false
; - 当第一个条件为
false
时,就不再判断前面的条件
2. ||
- 只有有一个条件为
true
时,后果就为true
; - 当两个条件都为
false
时,后果才为false
; - 当一个条件为
true
时,前面的条件不再判断
二、应用场景
在很多返回值管制方面能够应用这两个符号实现很实用的成果
1. 封装 ajax 申请
封装 ajax
申请中,办法作为参数时,能够传递有参数或无参数的办法,如果是有参数的,就在 success
中执行带参数的办法,如果没有就执行无参数的。
function getData (url, queryData, onSuccess, onError, complete) {
$.ajax({
url: url,
method: 'GET',
dataType: 'json',
data: queryData,
beforeSend: function (request) {},
success: function (res) {onSuccess && onSuccess(res);
}
})
}
getData('/user/register', {
name: 'Kyle',
age: 30
}, res => {
// 这里是带参数的胜利返回办法
// 在下面的办法中就会执行 onSuccess(res) 这个入口
})
2. 简化 value ? value : 'default value'
在 Swift 中有个很实用的运算符 ??
它的作用是:
如果后面的值不为 nil
(就是空的意思) 就返回后面的值,如果为 nil
就返回前面的值
let str = value ?? 'second';
// 相当于
let str = value ? value : 'second'
之前始终想不出 js
中如何能实现这样的成果,当初能够了。间接应用 ||
即可。因为它的作用是返回第一个为 true
的值,如果 value
有值并且不为 0
undefined
null
等,就返回 value
,否则返回前面的值。
value ? value : 'second'
// 返回值为 "second"
value || 'second'
// 返回值为 "second"
在很多应用场景中都会用到这个
正文完
发表至: javascript
2020-12-04