for in , forEach, for of 如何使用

for in , forEach, for of 如何使用

 <script>
        let car = {
            name: '小红',
            age: 27,
            count: function () {
                age += 1
            }
        }
        let obj_name = 'car'
        //封装一个遍历对象的函数,对象作为参数传递进去,for in 适用于遍历对象
        function dump_props(obj, obj_name) {
          var result = "";
          for (var i in obj) {
            result += obj_name + "." + i + " = " + obj[i] + "<br>";
          }
          result += "<hr>";
          return result;
        }
        var result = dump_props(car, obj_name)
        console.log(result)
        alert(result)
		//遍历数组
        let arr = [3, 5, 7];
        arr.foo = "hello";
        //for in 遍历数组得到的是索引和属性名
        for (let i in car) {
            console.log(i); // logs "0", "1", "2", "foo"
        }
        
        //ES5 forEach 遍历数组得到元素的值
        arr.forEach(item => {
            console.log(item) // logs "3", "5", "7"
        })
        //ES6 for of 遍历数组得到的是元素的值
        for (let i of car) {
            console.log(i); // logs "3", "5", "7" // 注意这里没有 hello
        }
     	//for of 遍历不到原型上面的属性
        Array.prototype.method = function () {
            console.log(this.length);
        }
        var myArray = [1, 2, 4, 5, 6, 7]
        myArray.name = "数组";
        for (var value of myArray) {
            console.log(value);
        }
		//for in遍历对象只遍历
        Object.prototype.method = function () {
            console.log(this);
        }
        var myObject = {
            a: 1,
            b: 2,
            c: 3
        }
        for (var key in myObject) {
            if(myObject.hasOwnProperty(key)) {
            console.log(key);
        }
        }


        var tabList = [
            {text: '综合', ischeck: true, status: ''},
            {text: '最新', ischeck: false, status: '1'},
            {text: '价格', ischeck: false, status: '2'},
            {text: '销量', ischeck: false, status: '3'},
        ]
        
        var index = 1
        tabList.forEach(function(item,index){
            console.log(index + ':' + item.ischeck)
            item.ischeck = false
        
        })
        tabList[index].ischeck = true
        console.log(tabList)
        for(var item of tabList ){
            console.log(item)
            item.ischeck = false
        }
        tabList[index].ischeck = true
        console.log(tabList)
    </script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值