javascript - 循环遍历 jquery 对象的惰性语法

标签 javascript jquery

这些是我在循环时用来声明 jquery 对象的一些基本方法:

let $divs = $('.mydiv');

for (let i = 0; i < $divs.length; i++) {
    let $div = $($divs[i]);
}

// or

for (let $div of Array.from($divs)) {
    $div = $($div);
}

// or

Array.from($divs).forEach(function ($div) {
    $div = $($div);
});

我想保存行 $div = $($div) (以便更快地编写代码),如下所示:

for (let $($div) of Array.from($divs)) {
    // ...
}

// or

Array.from($divs).forEach(function ($div = $($div)) {
    // ...
});

有办法实现我的目标吗?

更新:

因为 $('.mydiv') 可以返回超过 1 个元素,所以我需要一个循环来处理它们。但是使用循环,它不会为每个元素返回一个 jquery 对象,我必须用 $(...)

来包装它

最佳答案

并不是真正问题的答案

有了一个由 $ 包裹的元素数组之后,您打算用它做什么?

$('.mydiv')                        // = $-wrapped html collection
  .map((_, e) => $(e))             // = array of $-wrapped elements
  .each((_, e) => console.log(e))  // = log each $-wrapped element
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="mydiv">1</div>
<div class="mydiv">2</div>
<div class="mydiv">3</div>

这实际上与下面的脚本没有什么不同,那么有什么意义呢?

$('.mydiv')                          // = $-wrapped html collection
  .each((_, e) => console.log($(e))) // = log each $-wrapped element
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="mydiv">1</div>
<div class="mydiv">2</div>
<div class="mydiv">3</div>

关于javascript - 循环遍历 jquery 对象的惰性语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43673005/

相关文章:

javascript - 为什么 Axios .then 和 .catch 函数会增加我的索引?

javascript - jquery/javascript : return and if sentence

javascript - 简单的 HTML pretty-print

javascript - ngFlow 到 Forimidable node.js 服务器

javascript - Chrome 的版本会影响 JavaScript 库的行为吗?

javascript - 运行功能然后点击链接

javascript - 无法让 MongoDB 更新查询在 Node.JS 中工作

javascript - 如何实现 iframe 元素选择器? (如 Chrome )

c# - JQuery .each 函数

jquery - 使用 jQuery 和 CSS 在加载网页时显示元素