underscore

    第三张卡与第二张卡所学要的知识差不太多,只是点击开始按钮要自动生成一个竞价名,所以存储的时候用 的下面的代码

var bidding_each_name = {bid_sign_up: bidding_sign_up, bid_name: (parseInt(each_bidding_list_name.length) + 1)} //把竞价列表的长度自动加一
bidding_lists_name.unshift(bidding_each_name)
localStorage.setItem("bidding_lists_name", JSON.stringify(bidding_lists_name))

 其他的没什么不同,知识开始按钮的可点与否又加了几个判断条件,所以学习一下underscore

1.map

_.map(list, iterator, [context]) 

映射 list 里的每一个值, 通过一个转换函数(iterator)产生一个新的数组. 如果有原生的 map 函数, 将用之代替. 如果 list 是一个 JavaScript 对象, iterator的参数将会是 (value, key, list).

例子

var price_count_infos = _.map(bid_resolve_count, function (value, key) {
  return {"price": key, "count": value}})

 2 .countBy

_.countBy(list, iterator) 

 把一个数组分组并返回每一组内对象个数. 与 groupBy 相似, 但不是返回一组值, 而是组内对象的个数.

例子

var bid_resolve_count = _.countBy(this_resolve_bidding_messages,function 
(messages_des) { return messages_des.money});

 3.sortBy

_.sortBy(list, iterator, [context]) 

 返回一个经过排序的 list 副本, 用升序排列 iterator 返回的值. 迭代器也可以用字符串的属性来进行比较(如length).

例子

_.sortBy([1, 2, 3, 4, 5, 6], function(num){ return Math.sin(num); });
=> [5, 4, 6, 3, 1, 2]

4.find

_.find(list, iterator, [context])

 从list里进行逐项查找,返回第一个符合测试(iterator)条件的元素,如果没有的话则返回undefined。 此函数只返回第一个符合条件的元素,并不会遍历整个list。

例子

_.find([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; });
=> 2

这几个underscore里面的方法挺好用的,一开始找返回值不是很顺利,就多 console.log()几次。

还发现竞价短信处理时要确保收到的竞价是price,所以用下面代码又处理了一下

if (message.search(/jj/i) == 0) {
   var bidding_money = message.replace(/jj/gi, "")
 }
if (isNaN(bidding_money)==false) {}//如果bidding_money里面的内容是数字就往下进行

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值