集合 - 循环处理列表中的每一个项目 - each

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

国庆活动:订阅年付会员送 6 个月,重订、续订送 12 个月。订阅 →

如果你想循环去处理一个列表,比如一个数组,或者一个对象。可以使用 Underscore 的 each 方法 ... 这个方法有两个参数,第一个参数是要处理的列表,第二个参数是一个迭代器。each 方法会把列表里面的每一个项目,都交给这个迭代器去处理一下 ...

如果列表是一个数组的话,这个迭代器接收的参数就是 element ,表示当前这次处理的元素 ... 第二个参数是 index,表示这个元素在数组里面的索引号 .. 最后一个参数是 list ,表示这个列表本身。

如果要处理的列表是个对象的话,这个遍历器的第一个参数是对象的值,可以用 value 表示 ... 第二个参数是 key ,表示对象里的属性的名字 .. 最后一个参数是 list ,表示要处理的这个列表对象。

下面, 我们去试一下这个方法 ...

先处理一下 tracks 这个数组 ... 要做的事就是,在控制台上输出这个数组里面的每个项目的索引号,还有对应的值 ... underscore 点 each ,使用 underscore 的 each 这个方法 ... 要处理的列表是 tracks ... 再设置一下处理这个列表的函数,也就是遍历器 ...

可以使用一个函数的名字 ... 这里我们直接使用一个匿名函数 ... 给它两个参数,用 track 来表示当前要处理的元素 ... 然后再用 index 表示元素的索引号 ...

在这个函数里面,用一个 console.log ,在控制台上输出 tracks 里面的项目的索引号,还有对应的值 ...

_.each(tracks, function(track, index){ console.log(index + ' ' + track);})

回车 ... 你会看到这里每一行会输出 tracks 数组里面的一个项目的索引号还有值 ... 注意在最后,这个方法会返回处理的这个列表 ...

这个方法还有一个别名,叫 forEach ...

_.forEach(tracks, function(track, index){ console.log(index + ' ' + track);})

这两个方法的效果是一样的 ...

对象

下面,我们再用 each 这个方法去遍历一个对象 ... 整理一下屏幕 ... command + K 清空一下 ... 或者 command + R 刷新一下页面 ...

要处理的对象是 album ... (#输入 album)

下划线 ... 点 each ... 要遍历的列表是 album 这个对象 ... 再定义一下遍历器 ... 用一个匿名函数 .. . 处理对象的时候,第一个参数是对象的属性的值,这里我们用 value 表示 ... 逗号分隔一下 ... 第二个参数是对象的属性的名字 .. 可以用 key 来表示 ...

在这个函数里面,我们把 album 这个对象里的属性名字还有对应的值输出到控制台上 ...

_.each(album, function(value, key){ console.log(key + ':' + value); })

回车 ... 在控制台上,每一行显示 album 这个对象里面的一个属性 ... 包括属性的名字,还有对应的值 ...

在最后,会返回这个被遍历的对象 ...

集合 - 循环处理列表中的每一个项目 - each《 Underscore 基础 》

统计

11228
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点