<!DOCTYPE html>
<html>
<head>
<title>用undercore</title>
</head>
<body>
<div>
</div>
<script src='assets/jQuery/jquery-1.11.1.min.js'></script>
<script src='assets/underscore/underscore-min.js'></script>
<script>
// 原生的数组方法 filter(call(item,index,attr)) 和 map() 和 some() 和 every() 和
// 1.filter()
// var filterAfterAttr = filterAttr.filter(callback())
function filterCallFn(element, index, array) {
// 当前元素,当前元素的索引和当前的数组对象
return (element >= 10);
}
// 当前元素,当前元素的索引和当前的数组对象
var filtered = [12, 5, 8, 130, 44].filter(filterCallFn);
console.log(filtered);
var a = [{"equip":'A','code':'B'},{"equip":'C','code':'B'},{"equip":'D','code':'B'},{"equip":'A','code':'B'}];
function acall(item,index,attr){
return (item.equip != 'A' )
}
console.log(a.filter(acall));
//2.map()
//example1
var tryData = [{'resultValue':'2012','valueTime':'2012-3-4'},{'resultValue':'2012','valueTime':'2012-3-4'},{'resultValue':'2012','valueTime':'2012-3-4'},{'resultValue':'2012','valueTime':'2012-3-4'}];
var dateList = tryData.map(function (item) {
return item.resultValue;
});
var valueList = tryData.map(function (item) {
return item.valueTime;
});
console.log(dateList);//所有的值的数组集合
console.log(valueList);//所有时间的数组集合
//example2
var strAttr = ["map", "Map", "MAP"];
function getLowerCase(v)
{
return v.toLowerCase();
}
var lowerStr = strAttr.map(getLowerCase);
console.log(lowerStr);
//3.every()
var everyAttr = ['a','b','c','b'].every(function(item){
return (item.charCodeAt() > 65)
});
console.log(everyAttr)//true
//4.forEach()
var forEachAttr = [{'dataType':'ECEP-HYFX','value':'88'},{'dataType':'ECEP-LL','value':'99'},{'dataType':'ECEP-YL','value':'77'},{'dataType':'ECEP-FSTZ','value':'66'},{'dataType':'ECEP-DCS','value':'55'}];
forEachAttr.forEach( function(item, index) {
if( item.dataType == 'ECEP-DCS'){
item.value = 'dcs';
}
});
console.log(forEachAttr);
// underscore
// 1.reduce
var sum = _.reduce([1, 2, 3], function(index, item){
return index + item;
},2);
// index:2 item:1
// index:3 item:2
// index:5 item:3 sum = 8(2+1+2+3)
// console.log(sum);
//2.find
var a = [{'a':1},{'b':2}];
var b = {'a':1};
var find = _.find(a,function(item,index){
return item.a == b.a;
// if(item == b){
// return true
// }else{
// return false
// }方法不行
});
console.log(find)//{'a':1}
console.log(_.isEmpty({}));//true
console.log(_.isEmpty([]));//true
var c = undefined;
console.log(_.isEmpty(c));//true
var c = null;
console.log(_.isEmpty(c));//true
</script>
</body>
</html>
undercore
最新推荐文章于 2025-04-01 09:50:00 发布