javascript - DOM HTML 的数组方法?

标签 javascript html arrays dom

我需要制作一个array来自li标签。该数组必须包含其内部 texts 。数组中的每个索引,每个内部 textsli标签。

我试图通过 Array.prototype.slice() 调用数组方法 slice 。但可能我犯了一些错误......

结果必须是这样的:

arr = ["Animals", "0_", .... , "fish__"]

var bodyd = document.getElementsByTagName('li');
for (var i = 0; i < bodyd.length; i++) {
  bodyd = Array.prototype.slice.call(bodyd, 1);
  console.log(bodyd);
}
<ul>
  <li>Animals
    <ul>
      <li>0_
        <ul>
          <li>1__</li>
          <li>2__</li>
          <li>3__</li>
          <li>4__</li>
        </ul>
      </li>
      <li>Other_
        <ul>
          <li>Slis__</li>
          <li>Bird__</li>
          <li>Repti__</li>
        </ul>
      </li>
    </ul>
  </li>
  <li>Fish
    <ul>
      <li>Aqua
        <ul>
          <li>Aqua__</li>
          <li>Aqua__</li>
        </ul>
      </li>
      <li>fish_
        <ul>
          <li>fish__</li>
        </ul>
      </li>
    </ul>
  </li>
</ul>

最佳答案

试试这个

var bodyd = document.getElementsByTagName('li');

bodyd = Array.prototype.slice.call(bodyd).map(function(val) {
    return val.firstChild.data.trim();
});

console.log(bodyd);

关于javascript - DOM HTML 的数组方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48301592/

相关文章:

javascript - 如何阻止文本中的脚本标签执行?

javascript - 我可以使用两个 id 来获取一个元素吗?

html - 制作背景 100%

java - Java中的查找表

javascript - Chart.js 更新到 X 轴不更新

javascript - 如何在带有水平滚动卡翻转组件的 bootstrap 4 卡中包含文本

javascript - 与 Jquery 延迟作斗争

javascript - 使 Jquery 元素过滤器选项卡在单击时处于事件状态

c - 使用 malloc 后无法复制数组

java - 如何从字符串中分离出多个不同的单词(Java)