zoukankan      html  css  js  c++  java
  • js的for in循环和java里的foreach循环的差别

        js里的for in循环定义例如以下:

        for(var variable in obj) { ... }

        obj能够是一个普通的js对象或者一个数组。假设obj是js对象,那么variable在遍历中得到的是对象的属性的名字,而不是属性相应的值。假设obj是数组,那么variable在遍历中得到的是数组的下标。

        遍历对象实验:

    var v = {};
    v.field1 = "a";
    v.field2 = "b";
    for(var v in v) {
        console.log(v);
    }
    
    控制台下输出:
    field1 
    field2 
        遍历数组实验:

    var mycars = new Array()
    mycars[0] = "Saab"
    mycars[1] = "Volvo"
    mycars[2] = "BMW"
    
    for (var x in mycars){
      console.log(x);
    }
    
    控制台输出:
    0 
    1
    2 
        拿java的foreach循环来做对照,有两大区别。首先java的foreach循环不会去枚举一个java对象的属性。其次,java的foreach循环枚举一个数组或者不论什么实现了Iterable接口的对象的时候,for(Object o : list), 对象o得到的是list一个元素,而非在列表中的下标。

        java的遍历代码就不贴出来了。常常写后台代码,foreach循环非常熟悉。写前台js代码的时候,难免会套用java的语法,所以第一次用js的for in循环的时候犯错了。这次总结清楚,以后就不会犯错误了。

  • 相关阅读:
    ubuntu下安装eclipse
    UTC时间、GMT时间、本地时间、Unix时间戳
    [转]mysql使用关键字作为列名的处理方式
    mysql日期格式化
    ssh远程登陆看不到用户名和主机名
    ssh以root用户远程登录失败
    PowerBI发布到网页
    视图是否有主键的问题
    select count(*)和select count(1)
    PPT产品的重要性
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/4074041.html
Copyright © 2011-2022 走看看