javascript - 带嵌套 IF 语句的 FOR LOOP

标签 javascript html for-loop

我有一些代码循环遍历数组并将数据添加到 HTML 表中。

对于“Unit_Sell”字段之一,我想在 HTML 中添加“£”符号作为前缀。

这是我尝试过的。

 for (var i = 0; i < arr.length; i++) {
   var node = win.document.createElement("tr")

   for (var key of ['description', 'ref_date_start', 'ref_date_end', 'unit_sell', 'qty', 'price']) {
     var tb = win.document.createElement("td")

     if (key = 'unit_sell') {
       tb.innerHTML = '£' + arr[i][key]
     }

     tb.innerHTML = arr[i][key]
     tb.style.paddingLeft = "30px";
     node.appendChild(tb)
   }
 }

循环工作正常,但不满足 if 语句条件。

最佳答案

正如已经指出的,您需要将 key'unit_sell' 进行比较,而不是进行分配。但是,您还需要一个 else 分支,否则条件中的 innerHTMl 将被覆盖。

for (var i = 0; i < arr.length; i++) {
  var node = win.document.createElement("tr")

  for (var key of ['description', 'ref_date_start', 'ref_date_end', 'unit_sell', 'qty', 'price']) {
    var tb = win.document.createElement("td")

    if (key === 'unit_sell') {
      tb.innerHTML = '£' + arr[i][key]
    } else {
      tb.innerHTML = arr[i][key]
    }

    tb.style.paddingLeft = "30px";
    node.appendChild(tb)
  }
}

关于javascript - 带嵌套 IF 语句的 FOR LOOP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58917956/

相关文章:

javascript - 使用数组reduce来减少对象数组的两个属性

html - 输入宽度 100% 和边距/填充

android - 如何使 &lt;input type =“file” > 在 Android 和 iOS 中禁用 "take photo"选项

c++ - 如何在 C 代码中复制字节数组?

javascript - 为什么 Number([]) 是 0 而 Number(![]) 也是 0?

javascript - mdc-select 通过 JS 选择选项

javascript - 流式传输文档数据后链接无法打开

php从数据库表填充选项框

Java 好奇循环性能

r - 如何在大于测试中使用 numeric(0)?