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

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

有沒有更好的方法來查找迭代器是否已達(dá)到其最后一個(gè)值?

有沒有更好的方法來查找迭代器是否已達(dá)到其最后一個(gè)值?

慕碼人8056858 2021-04-16 18:15:11
我可以做這個(gè):let iter = mySet.values();var val = iter.next();var next = iter.next();while(val.value){  if(!next.done){    // do something that I want to do to the last element  }  val = next;  next  = iter.next();}但“下一個(gè)”變量似乎很笨拙。有沒有更好的辦法?當(dāng)我檢查mySet對(duì)象時(shí),我看到帶有數(shù)組值的[[Entries]]鍵,但是我該如何訪問呢?
查看完整描述

2 回答

?
MM們

TA貢獻(xiàn)1886條經(jīng)驗(yàn) 獲得超2個(gè)贊

您可以使用,while(!next.done)并且next()每個(gè)迭代只想使用一次。


要弄清它是否是最后一個(gè)值,請將值存儲(chǔ)在變量中,然后重新分配next,然后done在處理值之前檢查


function* myGen(arr) {

  let i = -1;

  while (++i < arr.length) {

    yield arr[i] * 2;

  }

}


const it = myGen([1, 2, 3]);


let next = it.next();


while (!next.done) {

  const val = next.value;

  next = it.next();

  console.log('value:', val, ' is last = ', next.done);

}


console.log('done:', next.done)


查看完整回答
反對(duì) 回復(fù) 2021-04-29
?
慕工程0101907

TA貢獻(xiàn)1887條經(jīng)驗(yàn) 獲得超5個(gè)贊

從Mozilla的Doc中

“ ... next()方法,該方法返回具有兩個(gè)屬性的對(duì)象:value,序列中的下一個(gè)值;完成,如果序列中的最后一個(gè)值已被消耗,則為true。 ”

您的方法沒有錯(cuò)。


查看完整回答
反對(duì) 回復(fù) 2021-04-29
  • 2 回答
  • 0 關(guān)注
  • 258 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)