数组的遍历


㈠数组的遍历

⑴所谓的遍历数组,就是将数组中所有的元素都取出来

⑵格式:

for(var i = 0;i < arr.length; i++){ console.log(arr[i]); }

 

⑶示例:

 

㈡forEach

⑴一般我们都是使用for循环去遍历数组

   JS中,还为我们提供了一个方法,用来遍历数组

   ----forEach()

   这个方法只支持IE8以上的浏览器

   IE8以下的浏览器均不支持该方法,所以如果需要兼容IE8,则不要使用forEach,还是使用for循环来遍历

 

⑵forEach()方法需要一个函数作为参数

   像这种函数,由我们创建但是不由我们调用的,我们称为回调函数

   数组中有几个元素,函数就会执行几次,每次执行时,浏览器会将遍历到的元素

   以实参的形式传递进来,我们可以来定义形参,来读取这些内容

 

⑶浏览器会在回到函数中传递三个参数:

   第一个参数,就是当前正在遍历的元素

   第二个参数,就是当前正在遍历的元素的索引

   第三个参数,就是正在遍历的数组

 

⑷示例如下:

var arr = ["孙悟空","猪八戒","沙和尚","唐僧","白骨精"]; arr.forEach(function(value,index,obj){ console.log(value); });

 

㈢练习

问题如下:

问题如下: function Person(name , age , gender ){ this.name = name; this.age = age; } //修改Person原型的toString  Person.prototype.toString = function(){ return "Person[name =" +this.name+",age= " +this.age+" ]"; }; //创建一个Person对象 var per = new Person("孙悟空",18); //创建一个Person对象 var per = new Person("孙悟空",18); var per2 = new Person("猪八戒",28); var per3 = new Person("红孩儿",8); var per4 = new Person("蜘蛛精",16); var per5 = new Person("二郎神",38); //将这些person对象放入到一个数组中 var perArr = [per,per2,per3,per4,per5]; //创建一个函数,可以将perArr中的满18岁的person提取出来 //然后封装到一个新的数组中并返回 //arr 形参,要提取信息的数组  function getAdult(arr){ //创建一个新的数组 var newArr = [ ]; // 遍历arr,获取arr中Person对象 // 判断Person对象的age是否大于等于18 // 如果大于等于18,则将这个对象添加到newArr中 //将新的数组返回 return newArr; } var result = getAdult(perArr); console.log(result);

 

答案如下:

function Person(name , age , gender ){ this.name = name; this.age = age; } //修改Person原型的toString  Person.prototype.toString = function(){ return "Person[name =" +this.name+",age= " +this.age+" ]"; }; //创建一个Person对象 var per = new Person("孙悟空",18); //创建一个Person对象 var per = new Person("孙悟空",18); var per2 = new Person("猪八戒",28); var per3 = new Person("红孩儿",8); var per4 = new Person("蜘蛛精",16); var per5 = new Person("二郎神",38); //将这些person对象放入到一个数组中 var perArr = [per,per2,per3,per4,per5]; //创建一个函数,可以将perArr中的满18岁的person提取出来 //然后封装到一个新的数组中并返回 //arr 形参,要提取信息的数组  function getAdult(arr){ //创建一个新的数组 var newArr = [ ]; // 遍历arr,获取arr中Person对象 for(var i = 0; i < arr.length; i++){ var p = arr[i]; //判断Person对象的age是否大于等于18 if(p.age >= 18){ //如果大于等于18,则将这个对象添加到newArr中 //将对象放入到新数组中  newArr.push(p); } } //将新的数组返回 return newArr; } var result = getAdult(perArr); console.log(result)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM