第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

編寫一個函數(shù),它接受兩個或多個數(shù)組,并以原始提供的數(shù)組的順序返回一個新的惟一值數(shù)組。

編寫一個函數(shù),它接受兩個或多個數(shù)組,并以原始提供的數(shù)組的順序返回一個新的惟一值數(shù)組。

牧羊人nacy 2019-03-06 14:15:24
我的思路是這樣的:將所有傳入的數(shù)組拼成一個新的數(shù)組,再對新數(shù)組進行遍歷去重,但是出現(xiàn)了如下的問題:    function tick(){        var result=[];        for(var i=0;i<arguments.length;i++){            result=result.concat(arguments[i]);        }        for(var j=0;j<result.length;j++){            var index=-1;            var flag=true;            while(index=(result.indexOf(result[j],index+1))!==-1){                if(flag){                    flag=false;                    continue;                }else{//index會變成true,然后隱式轉換成1,不知道怎么解決                    result.splice(index,1);                }            }        }        return result;    }
查看完整描述

2 回答

?
森林海

TA貢獻2011條經(jīng)驗 獲得超2個贊

應該把
index=(result.indexOf(result[j],index+1))
用括號括起來
不然是把后面的布爾量賦值給index

查看完整回答
反對 回復 2019-03-28
?
回首憶惘然

TA貢獻1847條經(jīng)驗 獲得超11個贊

邏輯運算符的優(yōu)先級比賦值運算符高,所以while的條件里是先進行邏輯運算再賦值,所以 index 的值只可能為 true 或者 false,而為 false 時將會退出循環(huán),所以每次讀取 index 的值都為 true。


你要的是先賦值再進行邏輯運算,所以改一下循環(huán)條件就行了:


while((index=result.indexOf(result[j],index+1)) !== -1) {

  // ...

}


查看完整回答
反對 回復 2019-03-28
  • 2 回答
  • 0 關注
  • 596 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號