function sym(...args) {
let arr = [...args];
while(!arr.length === 0) {
arr.pop();
console.log(arr.length);
}
}
console.log(sym([1,2,5],[2,3,5],[3,4,5]));
我試圖找出一個問題,但出現了另一個問題。有人可以向我解釋為什么這個日志未定義嗎?嚴格相等運算子記錄 undefined 但普通相等運算子不會記錄,即使arr.length回傳一個數字。
uj5u.com熱心網友回復:
!具有比 更高的運算子優先級===。
while(!arr.length === 0) {
相當于
while((!arr.length) === 0) {
將布林值與數字進行比較永遠不會與 一起使用===,但有時可以使用==- 但無論哪種方式,這都不是您想要的。使用!== 0來代替。
function sym(...args) {
let arr = [...args];
while(arr.length !== 0) {
arr.pop();
}
return arr;
}
console.log(sym([1,2,5],[2,3,5],[3,4,5]));
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/321562.html
標籤:javascript 数组
上一篇:如何跳過陣列中的指定值?
