现在问题来了,Array
有map()
和方法,可是Object没有这些方法。此外,低版本的浏览器例如IE6~8也没有这些方法,怎么办?
方法一,自己把这些方法添加到Array.prototype
中,然后给Object.prototype
也加上mapObject()
等类似的方法。
我们采用方法二,选择的第三方库就是underscore。
正如jQuery统一了不同浏览器之间的DOM操作的差异,让我们可以简单地对DOM进行操作,underscore则提供了一套完善的函数式编程的接口,让我们更方便地在JavaScript中实现函数式编程。
用underscore实现map()
操作如下:
咋一看比直接用Array.map()
要麻烦一点,可是underscore的还可以作用于Object: