迭代(遍历)方法: forEach()、map()、 filter()、 some()、 every() ;
map()和forEach()相似,some()和every()相似
array. forEach ( function (currentValue, index, arr) )
//相当于数组遍历的 for循环 没有返回值
var arr = [1, 2, 3];
var sum = 0;
arr.forEach(function (value, index, array) {
console.log("元素值" + value);
console.log("对应索引号" + index);
console.log("数组本身" + array);
sum += value;
})
console.log('数组和为' + sum);结果为:

array.filter (function (currentvalue, index, arr))
var arr = [12, 66, 4, 88, 3, 7];
var newArr = arr.filter(function(value, index) {
//参数一是:数组元素
//参数二是:数组元素的索引
//参数三是:当前的数组
return value >= 20;
// 返回数组里面的偶数给新数组
//return value % 2 === 0;// 返回原数组里面的偶数给新数组
});
console.log(newArr);//[66,88] //返回值是一个新数组array. some (function (currentvalue, index, arr))
some 查找数组中是否有满足条件的元素
var arr = [10, 30, 4];
var flag = arr.some(function(value,index,array) {
//参数一是:数组元素
//参数二是:数组元素的索引
//参数三是:当前的数组
return value < 3;
});
console.log(flag);//false返回值是布尔值,只要查找到满足条件的一个元素就立马终止循环
4.根据商品名称筛选
var str = ' hello '
console.log(str.trim()) //hello 去除两端空格
var str1 = ' he l l o '
console.log(str.trim()) //he l l o 去除两端空格,不影响中间运用案例:
<script>
// trim方法去除字符串两侧空格
var input = document.querySelector("input");
var btn = document.querySelector("button");
var div = document.querySelector("div");
btn.addEventListener('click', function () {
var str = input.value.trim();
if (str === '') {
alert('请输入内容');
} else {
console.log(str);
console.log(str.length);
div.innerHTML = str;
}
input.value = '';
})
</script>Object.keys() 用于获取对象自身所有的属性
Object . keys (obj)
var obj = {
id: 1,
pname: '小米',
price: 1999,
num: 2000
};
var result = Object.keys(obj)
console.log(result)//[id,pname,price,num]
arr.forEach(function (value) {
console.log(value);
})Object.defineProperty() 定义对象中新属性(设置)或修改原有的属性。
object . defineProperty(obj, prop, descriptor)
Object.defineProperty() 第三个参数descriptor说明: 以对象形式{}书写
Object.defineProperty(对象,'修改或新增的属性名',{
value:修改或新增的属性的值,
writable:true/false,//如果值为false 不允许修改这个属性值
enumerable: false,//enumerable 如果值为false 则不允许遍历
configurable: false //configurable 如果为false 则不允许删除这个属性以及不允许再次修改第三个参数里面的特性
})