[英]Using a guard to check array length
我目前有一個檢查數組長度是否為0的函數,如果是這種情況,則會引發錯誤。 我想知道是否有人可以幫助我了解如何使用&&運算符來執行此操作,在這種情況下,它可能更有效。
checkSample function(size) {
if(size.length === 0) {
throw new RangeError('Length must be greater than zero');
}
})
我不明白為什么這樣做會更有效,以及為什么要優化此調用。 我不會進行過早的優化,也不會更改所有檢查。 如果不是瓶頸,那就去解決。 似乎您的工作方式也很容易理解,用&&解決方案很奇怪,至少需要一些評論。
if(0 && 1){// false and true = false
alert('true') //0=false, anything else than 0 is true
} else{
alert('false')
}
給出錯誤。
if(500 && 1){ //true and true = true
alert('true')//so if array length is different than 0 it will evaluate as true
} else{ //that is the way JavaScript works
alert('false')
}
給真。
因此:
if(size.length && 1) {
//here your happy flow
} else
{
throw new RangeError('Length must be greater than zero');
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.