首页 > 解决方案 > 找出 .map() 方法

问题描述

在这里学习 JS,我有一个代码已经做了我需要的,但想看看我是否可以用 .map() 方法来做。

简而言之,此代码使用过滤的Sightings 中存储的数据将表格附加到网页。

let filteredSightings = [{
    datetime: "1/1/2010",
    city: "benton",
    state: "ar",
    country: "us",
    shape: "circle",
    durationMinutes: "5 mins.",
    comments: "one bright green light at my front door."
  },
  {
    datetime: "1/1/2010",
    city: "bonita",
    state: "ca",
    country: "us",
    shape: "light",
    durationMinutes: "13 minutes",
    comments: "Three bright red lights witnessed floating"
  },
... and so on

所以这可以完成工作:

let tbody = d3.select("tbody");

  filteredSightings.forEach((sight) => {
    let row = tbody.append("tr");
    Object.entries(sight).forEach(([key, value]) => {
      let cell = row.append("td");
      cell.text(value);}
      );
  });

现在我正在尝试更改它,以便我可以使用 .map() 但找不到将 forEach(([key, value]) 转换为 .map() 的方法。

这是我到目前为止提出的:

filteredSightings.map(sight => tbody.append("tr").append("td").text(sight.datetime));

标签: javascriptd3.jsarray.prototype.map

解决方案


推荐阅读