Jquery添加子元素的属性

Leg*_*ary 1 jquery attributes loops

我有一个<ul>列表,所有孩子<li>都有一个像这样大小的"自制"属性:

<ul class="container">
    <li size="3"></li>
    <li size="5"></li>
    <li size="2"></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

如何获取所有子项的大小值然后将它们添加到,所以我最终得到一个等于(在这种情况下)10的变量?
孩子的size数量和数量是动态的,所以我猜我需要某种循环?

Vis*_*ioN 5

这是最简单的方法:

var sum = 0;

$('.container li').each(function() {
    sum += +$(this).attr('size');
});

console.log(sum);
Run Code Online (Sandbox Code Playgroud)

对于现代浏览器,这是一种更复杂的方式:

var sum = $('.container li').map(function() {
    return +$(this).attr('size');
}).get().reduce(function(a, b) {
    return a + b;
});

console.log(sum);
Run Code Online (Sandbox Code Playgroud)