java写惯了,偶尔写个js,真是各种坑,比如方法中的return的效果就不一样:
java中:
public static void main(String[] args) {
String[] a = {"1","2","3"};
for (String s : a) {
if(s.equals("1")){
System.out.println(s);
return;//方法中出现return,就停止这个方法了
}
}
System.out.println("aaaaa");//这行是走不到的,因为之前的return,就把方法结束了
}
js中:
页面部分:
<input name="aa" value="1"/>
<input name="aa" value="2"/>
<input name="aa" value="3"/>
===================================================================
js部分:
$("input[name='aaa']").each(function(j,item){
if(item.value == "1"){
return;
}
});
console.log("aaaaa");//这行是照样走的,因为return只是结束了上面的循环而已
总结:
java中的return 是停止方法
js中的return 也可以停止方法,但当return在某个循环体内时,停止的就是这个循环而不是方法
本文通过示例对比了Java与JavaScript中return语句的不同行为:Java中return会终止整个方法的执行;而在JavaScript中,如果return位于循环内,则仅终止循环而非整个方法。
1347

被折叠的 条评论
为什么被折叠?



