var arr = ['zhang', 234, true, {
a: 1
}];
console.log('------------------- 分割线 ------------------');
//every方法指的是测试遍历每一项后返回的结果,如果有一项为false,立即结束遍历并让该方法的返回false,否则返回true
(function() {
var result = arr.every(item => {
console.log(item);
return typeof(item) != null
});
console.log(result, 'every方法');
})();
console.log('------------------- 分割线 ------------------');
//every方法指的是测试遍历每一项后返回的结果,如果有一项为true,立即结束遍历并让该方法的返回false,否则返回true
(function() {
var result = arr.some(item => {
console.log(item);
return typeof(item) == 'boolean';
});
console.log(result, 'some方法');
})();
console.log('------------------- 分割线 ------------------');
//filter方法是遍历每一项,然后进行条件过滤,返回满足条件的元素(原数组的元素)组成的新数组
(function() {
var result = arr.filter(item => {
return item > 0;
});
console.log(result, 'filter方法');
})();
console.log('------------------- 分割线 ------------------');
//map方法是遍历每一项,然后对每一项进行操作,返回操作后的元素组成的新数组
(function() {
var result = arr.map(item => {
return item > 0;
});
console.log(result, 'map方法');
})();
// reduce()方法为累加,最后返回累加后的结果
// reduceRight()方法是逆序累加,最后返回累加后的结果
console