📅  最后修改于: 2023-12-03 15:20:49.673000             🧑  作者: Mango
Underscore.js是一个JavaScript工具库,提供了许多实用的函数和工具,使得程序员能够更快速、更高效地编写代码。其中的_.each()
函数是一个特别方便的函数,可以遍历数组或对象,并对每个元素执行一个指定的操作。
_.each(list, iteratee, [context])
其中,list
可以是一个数组或者一个对象,iteratee
是对每个元素所要执行的函数,[context]
是指定函数内this
的指向。
list
:必须,要遍历的数组或对象。iteratee
:必须,对每个元素所要执行的函数。传递给iteratee
的参数包括:元素值(或对象的属性值)、元素索引(或对象的属性名)以及list
本身。context
:可选,指定函数内this
的指向。undefined
var arr = [1, 2, 3, 4];
_.each(arr, function(num) {
console.log(num);
});
// Output:
// 1
// 2
// 3
// 4
var obj = {one: 1, two: 2, three: 3};
_.each(obj, function(num, key) {
console.log(key + ": " + num);
});
// Output:
// one: 1
// two: 2
// three: 3
iteratee
函数内this
的指向var person = {
name: "Lucy",
sayHello: function() {
_.each([1, 2, 3], function(num) {
console.log("Hello, " + this.name + "! " + num);
}, this);
}
};
person.sayHello();
// Output:
// Hello, Lucy! 1
// Hello, Lucy! 2
// Hello, Lucy! 3
_.each()
函数是Underscore.js提供的一个非常实用的函数,使得程序员可以更加方便地遍历数组或对象,并对每个元素进行相应的操作。在实际编码中,我们可以根据具体需求,进一步结合其它Underscore.js提供的函数,如_.map()
、_.reduce()
等,从而实现更加高效、优雅的代码编写。