underscorejs-findWhere学习
2016-01-27 10:31
531 查看
2.8 findWhere
2.8.1 语法:
_.findWhere(list, predicate)2.8.2 说明:
对list集合的每个对象依次与predicate对象进行匹配,匹配成功则立即返回此对象list可以为数组和arguments
predicate是一个对象
2.8.3 代码示例:
示例一:findWhere对数组,arguments进行操作,与predicate对象进行匹配(数组内需为对象)
var result; result = _.findWhere([{x: 1, y: 2},{x: 1, z: 3}], {x: 1}); console.log(result) //=> {x: 1, y: 2} //操作arguments function abc() { result = _.findWhere(arguments, {z: 3}); console.log(result); //=> {x: 1, z: 3} } abc({x: 1, y: 2}, {x: 1, z: 3});
示例二:predicate需要是一个对象否则直接返回list集合的第一个对象
var result; result = _.findWhere([{x: 1, y: 2},{x: 1, z: 3}], {x: 1}); console.log(result) //=> {x: 1, y: 2} // 非对象的情况 result = _.findWhere([{x: 1, y: 2},{z: 3}], null); console.log(result) //=> {x: 1, y: 2}
2.8.4 list非数组且predicate没值得的时候会怎样?
// list为字符的情况 var result = _.findWhere('123'); console.log(result) //=> "1" list为字符串会返回字符串的第一个字符 // list为对象的情况 var result = _.findWhere({x: 1, y: '2'}); console.log(result) //=> 1 list为对象会返回对象的第一个属性值
2.8.5 基本用法已经知道怎么用了,是否有遗漏呢?
示例一:我们现在已经知道predicate为空的情况下回返回第一个属性值,如果匹配不到则会返回什么呢?
var result; result = _.findWhere([{x: 1, y: 2},{x: 1, z: 3}], {x: 10}); console.log(result) //=> undefined
gitbook地址:https://www.gitbook.com/book/niec-fe/underscorejs/details
相关文章推荐
- 软件开发过程中遇到的问题(Java 、JavaScript)
- underscorejs-where学习
- d3js+svg
- JavaScript设计模式--行为类型--命令模式
- JavaScript变量声明提升
- json的两种表示结构(对象和数组).。
- JavaScript声明提升
- js实现简单排列组合的方法
- Date.prototype.format,js下的时间格式处理函数
- 游戏开发常用JS
- JavaScript+html5 canvas制作的圆中圆效果实例
- JS中元素动画效果Transform属性
- javascript:history.go()和History.back()的区别
- JS一定要放在Body的最底部么?聊聊浏览器的渲染机制
- ajax--上传进度条
- js中的继承与重写
- Javascript获取页面元素的位置
- JavaScript+html5 canvas绘制的小人效果
- Objective-C与JavaScript交互的那些事
- jsp页面中文乱码