首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >forEach遍历对象并使用document.write()进行打印;

forEach遍历对象并使用document.write()进行打印;
EN

Stack Overflow用户
提问于 2019-09-12 13:58:53
回答 1查看 444关注 0票数 0

有一个数组,由我需要循环的几个对象组成(最好使用forEach循环,这是练习的范围)。我需要在屏幕上打印他们的详细信息(不能只在控制台上看到他们,这可能要简单得多),而且,理想的情况下,我需要用CSS来格式化他们。

使用实用的forEach循环(请参见下面的try-1),我可以更接近地打印一个完整的对象对序列,而不需要更深入地检索数据。

我成功地打印了每个对象的详细信息(try-2),但只能通过手动调用的每个属性的繁琐列表来实现。

有什么方法可以循环遍历对象并以有序的方式检索其数据并在屏幕上打印出来吗?提前感谢

代码语言:javascript
复制
var bulbasaur = { name: "Bulbasaur", height: 0.7, weight: 6.9, hatchSteps: 5100, types: ["Grass", " Poison"], eggGroups: ["Monster", " Grass"], abilities: ["Chlorophyll", " Overgrow"]};

var ivysaur = { name: "Ivysaur", height: 1, weight: 13, hatchSteps: 5100, types: ["Grass", " Poison"], eggGroups: ["Monster", " Grass"], abilities: ["Chlorophyll", " Overgrow"]};

var venusaur = { name: "Venusaur", height: 2, weight: 100, hatchSteps: 5100, types: ["Grass", " Poison"], eggGroups: ["Monster", " Grass"], abilities: ["Chlorophyll", " Overgrow"]};

var charmander = { name: "Charmander", height: 0.6, weight: 8.5, hatchSteps: 5100, types: ["Fire"], eggGroups: ["Monster", " Dragon"], abilities: ["Blaze", " Solar-power"]};

var charmeleon = { name: "Charmeleon", height: 1.1, weight: 19, hatchSteps: 5100, types: ["Fire"], eggGroups: ["Monster", " Dragon"], abilities: ["Blaze", " Solar-power"]};

var charizard = { name: "Charizard", height: 1.7, weight: 90.5, hatchSteps: 5100, types: ["Fire", " Flying"], eggGroups: ["Monster", " Dragon"], abilities: ["Blaze", " Solar-power"]};

var squirtle = { name: "Squirtle", height: 0.5, weight: 9, hatchSteps: 5100, types: ["Water"], eggGroups: ["Monster", " Water 1"], abilities: ["Rain-dish", " Torrent"]};

var wartortle = { name: "Wartortle", height: 1, weight: 22.5, hatchSteps: 5100, types: ["Water"], eggGroups: ["Monster", " Water 1"], abilities: ["Rain-dish", " Torrent"]};

var repository = [
  bulbasaur,
  ivysaur,
  venusaur,
  charmander,
  charmeleon,
  charizard,
  squirtle,
  wartortle
];


(try-1)

const keys = Object.entries(repository)

keys.forEach(function(item, key) {
  document.write(repository[key] + '<br>');
  document.write(item);
});```

try-2
```repository.forEach(function(pokemon){

document.write('‘+ pokemon.name + '’+)

代码语言:javascript
复制
             'Height: ' + pokemon.height + '<br>' +
代码语言:javascript
复制
             'Weight: ' + pokemon.weight + '<br>' +
代码语言:javascript
复制
             'Hatch Steps: ' + pokemon.hatchSteps + '<br>' +
代码语言:javascript
复制
             'Types: ' + pokemon.types + '<br>' +
代码语言:javascript
复制
             'Egg Groups: ' + pokemon.eggGroups + '<br>' +
代码语言:javascript
复制
             'Abilities: ' + pokemon.abilities + '<br>');

);`

(结果使用try-1)

对象对象

0,对象对象

1,对象对象

2,对象对象

3,对象对象

4,对象对象

5,对象对象

6,对象对象

7,对象对象

(使用try-2的结果)

牛头龙

身高: 0.7

重量: 6.9

舱口步骤: 5100

种类:草、毒

卵子组:怪物,草

能力:叶绿素,过度生长

(+其他7个口袋妖怪项目)

代码语言:javascript
复制
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-13 07:28:24

查看实际数据的一个快速方法是使用JSON.stringify将数据转换为字符串。

代码语言:javascript
复制
var bulbasaur = { name: "Bulbasaur", height: 0.7, weight: 6.9, hatchSteps: 5100, types: ["Grass", " Poison"], eggGroups: ["Monster", " Grass"], abilities: ["Chlorophyll", " Overgrow"]};
var ivysaur = { name: "Ivysaur", height: 1, weight: 13, hatchSteps: 5100, types: ["Grass", " Poison"], eggGroups: ["Monster", " Grass"], abilities: ["Chlorophyll", " Overgrow"]};
var venusaur = { name: "Venusaur", height: 2, weight: 100, hatchSteps: 5100, types: ["Grass", " Poison"], eggGroups: ["Monster", " Grass"], abilities: ["Chlorophyll", " Overgrow"]};
var charmander = { name: "Charmander", height: 0.6, weight: 8.5, hatchSteps: 5100, types: ["Fire"], eggGroups: ["Monster", " Dragon"], abilities: ["Blaze", " Solar-power"]};
var charmeleon = { name: "Charmeleon", height: 1.1, weight: 19, hatchSteps: 5100, types: ["Fire"], eggGroups: ["Monster", " Dragon"], abilities: ["Blaze", " Solar-power"]};
var charizard = { name: "Charizard", height: 1.7, weight: 90.5, hatchSteps: 5100, types: ["Fire", " Flying"], eggGroups: ["Monster", " Dragon"], abilities: ["Blaze", " Solar-power"]};
var squirtle = { name: "Squirtle", height: 0.5, weight: 9, hatchSteps: 5100, types: ["Water"], eggGroups: ["Monster", " Water 1"], abilities: ["Rain-dish", " Torrent"]};
var wartortle = { name: "Wartortle", height: 1, weight: 22.5, hatchSteps: 5100, types: ["Water"], eggGroups: ["Monster", " Water 1"], abilities: ["Rain-dish", " Torrent"]};

var repository = [
  bulbasaur,
  ivysaur,
  venusaur,
  charmander,
  charmeleon,
  charizard,
  squirtle,
  wartortle
];

document.querySelector('#repository').textContent = JSON.stringify(repository,null,2);
代码语言:javascript
复制
<pre id="repository"></pre>

但是,如果您想生成HTML,那么只使用像八字胡/车把这样的模板引擎可能会更简单/更强大

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57908384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档