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

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

Javascript 處理長度可能為一個(gè)元素的數(shù)組的最佳方法

Javascript 處理長度可能為一個(gè)元素的數(shù)組的最佳方法

qq_花開花謝_0 2022-01-07 20:52:05
我意識(shí)到可能是主觀的......但我在循環(huán)“數(shù)組”時(shí)遇到了問題。當(dāng)“陣列”是多個(gè)元素......它實(shí)際上是一個(gè)數(shù)組,所以我for...of和array.forEach做工精細(xì)。但是如果函數(shù)只接收一個(gè)項(xiàng)目,那么它就不是一個(gè)數(shù)組,它只是一個(gè)對(duì)象,我遇到了問題。我通過將它包裝在 if 語句中解決了這個(gè)問題,但是每次我循環(huán)遍歷實(shí)際上可能是單個(gè)對(duì)象而不是對(duì)象數(shù)組的東西時(shí),這似乎有點(diǎn)瘋狂。async function writeToDB(myArray: []) {  const db = await openDB("DomainsDB", 1);  const tx = db.transaction("Domains", "readwrite");  if (myArray.length > 1) {    myArray.forEach(async(r: any) => {      await tx.store.add(r["SearchHeader"]);    });  } else {    await tx.store.add(myArray["SearchHeader"]);  }  await tx.done;}
查看完整描述

1 回答

?
德瑪西亞99

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

由于myArraytype 是一個(gè)數(shù)組,TypeScript 應(yīng)該阻止您分配單個(gè)項(xiàng)目。如果您使用不支持類型的 Javascript,或者使用刪除構(gòu)建時(shí)鍵入的 babble 插件(在這種情況下,IDE 應(yīng)該警告您),就會(huì)發(fā)生這種情況。


JS中這個(gè)問題的可能解決方案:


您可以連接myArray到一個(gè)空數(shù)組。如果myArray是數(shù)組或單個(gè)項(xiàng)目,則結(jié)果將始終是數(shù)組:


async function writeToDB(myArray: []) {

  const db = await openDB("DomainsDB", 1);

  const tx = db.transaction("Domains", "readwrite");


  const arr = [].concat(myArray); // the result is always an array

  arr.forEach(async(r: any) => {

    await tx.store.add(r["SearchHeader"]);

  });


  await tx.done;

}

另一種選擇是分配myArray給另一個(gè)數(shù)組,并使用Array.flat():


async function writeToDB(myArray: []) {

  const db = await openDB("DomainsDB", 1);

  const tx = db.transaction("Domains", "readwrite");


  const arr = [myArray].flat(); // the result is always an array

  arr.forEach(async(r: any) => {

    await tx.store.add(r["SearchHeader"]);

  });


  await tx.done;

}


查看完整回答
反對(duì) 回復(fù) 2022-01-07
  • 1 回答
  • 0 關(guān)注
  • 125 瀏覽
慕課專欄
更多

添加回答

舉報(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)