在绝大多数编程语言中,如果if、for、while等语句的内容中仅有一条语句,可以省略花括号。
在这里,for循环没有花括号,所以,其等价于:
for(i = 0 i < arr1.length i++){for(j = 0 j < arr1[i].length j++){
alert(arr1[i][j])
}
}
alert(arr1[1])
也就是说,第一个for循环的循环体只有一个for循环,而这个for循环也没有花括号,所以这个for循环的循环体只有一个alert(arr1[i][j]),另外一条语句alert(arr1[1])不是两个for循环的循环体,要在两个循环都执行完毕后才会执行到。
不要被代码的缩进给迷惑了。同时提醒,良好的编码习惯应该不管循环体有几条语句,都加上花括号,以免引起和这里类似的错误。
那是angular的表达式,所有的表达式都是其所属的作用域内部执行,并有访问本地$scope的权限,如果表达式发生了错误不会抛出异常,表达式不允许使用任何流程控制语句例如if等,可以接受过滤器。为了防止在页面加载过快时可能出现{{}}的情况,可以使用ng-bind=""和{{}}的效果相同