亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

如何比較數組中的項目并替換,并在特定索引處設置索引?

如何比較數組中的項目并替換,并在特定索引處設置索引?

一只甜甜圈 2022-01-07 19:03:42
下面是在 html 和簡單的 JavaScript 中運行代碼以在 select 元素中顯示項目。目前選擇的項目來自options數組,還有一個名為days的數組在這里,我想將數組選項與天數以及任何項目索引到天數相似的天數進行比較,我想將它們放入選項數組中。因此,在比較數組之后,我的選項數組將類似于天數組。因此下拉菜單應按順序顯示項目,例如“日”、“周”、“月”、“年”、“六個月”,這應該來自選項數組var options = ["day", "yearly","week", "sixmonth",'month'];var days = ['day','week','month','yearly','sixmonth']var s = document.getElementById("selectCity");for (var i = 0; i < options.length; i++) {  s.innerHTML += `<option value=${i}> ${options[i]}</option>`;} <select id="selectCity">        <option>Choose a City</option>      </select>
查看完整描述

2 回答

?
墨色風雨

TA貢獻1853條經驗 獲得超6個贊

假設 days 是選項的子集,并且您希望所有選項數組值都按照天數的項目索引進行排序。并且選項數組中的任何額外項目最終都會按照它們的出現順序出現。


這是代碼


      var options = ["day", "yearly","week", "sixmonth",'month',"newMonth"];

      var days = ['day','week','month','yearly','sixmonth']

      var sorted=days.filter(val=>options.includes(val))

      options = options.filter(val => !days.includes(val))

      sorted.push(...options)

      console.log(sorted)

      var s = document.getElementById("selectCity");

      for (var i = 0; i < sorted.length; i++) {

           s.innerHTML += `<option value=${i}> ${sorted[i]}</option>`;

      }


查看完整回答
反對 回復 2022-01-07
?
慕雪6442864

TA貢獻1812條經驗 獲得超5個贊

我認為選項是天的子集,并且您希望對選項進行排序,使其與天具有相同的順序。


這是一個例子:


var options = ["day", "yearly","week", "sixmonth",'month'];


var days = ['day','week','month','yearly','sixmonth'];


var sortedOptions = options.sort((a, b) => days.indexOf(a) - days.indexOf(b))


var s = document.getElementById("selectCity");

for (var i = 0; i < sortedOptions.length; i++) {

    s.innerHTML += `<option value=${i}> ${sortedOptions[i]}</option>`;

}


查看完整回答
反對 回復 2022-01-07
  • 2 回答
  • 0 關注
  • 150 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號