JavaScript的循环语句有哪些?

JavaScript032

JavaScript的循环语句有哪些?,第1张

1whilevar num = 1//1、声明循环变量while (num<=10){//2、判断循环条件 document.write(num+"<br />")//3、执行循环体操作;num++//4、更新循环变量;} while循环()中的表达式,运算结果可以是各种类型,但是最终都会转为真假,转换规则如下。①Boolean:true为真,false为假;②String:空字符串为假,所有非空字符串为真;③Number:0为假,一切非0数字为真;④null/Undefined/NaN:全为假;⑤Object:全为真。2do-while循环while循环特点:先判断后执行;do-while循环特点:先执行再判断,即使初始条件不成立,do-while循环至少执行一次;var num = 10 do{document.write(num+"<br />")//10 9 8 7 6 5 4 3 2 1 0num-- }while(num>=0) document.write(num)//-13,for循环for (var num =1num<=10num++) {document.write(num+" <br />")//1 2 3 4 5 6 7 8 9 10 }4for-in循环 var arr = ['a', 'b', 'c', 'd'] for (let a in arr) {console.log(a)// 0 1 2 3}for (let a of arr) {console.log(a)// a b c d}JQ循环有$.each和$.map('div').each(function (i){ i就是索引值 this 表示获取遍历每一个dom对象})

for的效率比for in高

for in需要调用js的Iterator对对象的属性进行枚举,然后再执行循环

for的是直接通过index索引到object的指针

是的

for(variable in object)

object为null、undefined,javascript会跳过循环执行后面的代码,在ECMAScript3中可能会抛出类型错误异常

object为原始值,会转换为与之对应的包装对象

若为对象类型,javascript会依次枚举对象的属性来执行循环,在每次循环前,javascript都会先计算variable表达式的值,并将属性名(一个字符串)赋值给它

例子

var obj = {type:'human',history:'300000years',use:'example'}

var arr2 = [],i=0

for(arr2[i++] in obj) /*empty*/

console.log(arr2) //["type","history","use"]