循环与逻辑运算符

循环

While循环

While(表达式){执行循环语句}

do-while循环

do{

执行循环语句

}While(表达式)

区别:while先判断后执行,do-while先执行后判断(不满足情况下,do-while会多执行一次)

for循环

For(赋初值;满足条件;做运算){

执行循环语句

}

初始值是多少,结束值是多少,做什么运算

结束语句

break多层循环只结束里层

continue结束当前循环

Lable语句

用来给代码取别名,方便下面语句操作此代码

a: for(var i=1;i<=10;i++){

           b: for(var j=1;j<=5;j++){

                if(j==3){

                    break a//结束外层循环

                }

                console.log("i="+i+",j="+j)

            }

        

逻辑运算符

逻辑与

如果第一个操作的是对象,返回第二个操作值

如果第二个操作的是对象,只有第一个为真,才会返回第二个对象

如果前后两个都是对象,则会返回第二个对象

如果第一个操作的是null,则会返回null

如果第一个操作的是undefined,则会返回undefined

如果第一个操作的是NaN,则会返回NaN

逻辑或

如果第一个操作的是对象,返回第一个操作值

只有第一个操作结构为false,则返回第二个

如果前后两个都是对象,则返回第一个对象

前后都是null,则会返回null

前后都是undefined,则会返回undefined

前后都是NaN,则会返回NaN

逻辑非

如果第一个是对象,返回false

如果是一个空字符串,返回true

如果是一个非空字符串,返回false

如果操作的是数字0,返回true

如果操作的是一个非0数字,返回false

如果操作的是null,返回true

如果操作的是undefined,则会返回true

如果操作的是NaN,则会返回true

一句话:

逻辑与,有关键字返回关键字,不为false返回第二个

逻辑或,前后都为关键字,返回关键字,第一个为false才会返回第二个

逻辑非,为空和关键字返回true,其他都返回false

引用类型

包装对象

Number对象

定义:

Var a=24 整数

Var b=23.45 浮点数

Var c=071 八进制

Var d=0x1A 十六进制数

Var e=12340000000000000000//1.234e+31 科学计数法

Var f=0.0000000000000000003//3e-31

为什么0.1+0.2不等于0.3?

丢失精度问题

0.1=0.0001 1001 1001 1001 ....

0.2=0.0011 0011 0011 0011....

结果:0.30000000000000004

属性和方法

NaN不是一个数字 true

Infinity 无穷 -Infinity 负无穷

toFixed()保留小数位数    //console.log(n.toFixed(2))

ToString()转化为字符串

Number.EPSILON判断是计算误差还是数据不同

//console.log(0.1+0.2-0.3<Number.EPSILON)

数据类型转化

console.log(Number("12.34dsd12"))//报错

console.log(Number(true))//1

console.log(Number(false))//0

console.log(Number(NaN))//NaN

console.log(Number(null))//0

console.log(Number(undefined))//NaN

Boolean对象

例如:面试题 

 var t1=new Boolean(false)

    var t2=false

    console.log(t1==t2)//false==false  true

    console.log(t1===t2)//boolean===object  false 类型是否相同

    console.log(t1&&t2)//false&&false  false

    console.log(t1&&true)//object&&true true第一个为对象,返回第二个操作值

   console.log(t2&&true)//false&&true  false 第一个结果不为真,不返回第二个

其他类型转化布尔值

字符串:任意字符串为true,”” 为false

数字:非零和无穷为true,0为false

Null undefined都为false

对象都为true

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

兔子^-^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值