特殊的值 NaN not a number 非数字的集合 它属于六亲不认,不会和任何值相等,包括自己
isNaN() 用于判断是NaN
!isNaN() 用于判断不是NaN,也就是用于判断他的数字
null undefined
console.log(null === null) true 是对的
console.log(undefined === undefined) ture 是对的
console.log(null ==undefined) ture 规定他是相等的,这里的俩个等号判断的是值相等
console.log(NaN === NaN) false 是错的
字串符和字串符比较的时候,比较ASCLL值,是一位一位的比较 字串符这数字比较的值,先转数字再进行比较
Math对象 Math.random()产生0-1之间的随机数,包含0,但是不包含1 Math.ceil() 相上取整 Math.floor() 向下取整 Math.round() 四舍五入取整数
var x = Math.random()
console.log(x)
x *= 100
console.log(x)
这个是表示0-100之间的随机数
精度丢失不止是js的问题,而是计算机的问题 解决办法,将小数化整数
Math.random
产生0-1之间的随机数 产生0-任何值max之间的随机数 x * max 产生min-max 之间的随机数 x * (max - min) + min
操作标签的对象 认识对象 : 属性 + 函数(方法) 对象后面不带括号的是属性,带了括号的是函数(方法)
程序的三大流程控制语句 顺序结构,从上而下的执行代码 选择结构,判断 循环结构 重复的做一件 单分支的语句:有条件的执行代码 语法 if(条件){ 条件满足时执行的代码
}
双分支语句
语法 if(条件){
条件满足时执行的代码
else{
条件不满足时执行的代码
}
}
多分支
语法 if(条件1){
条件1满足时执行的代码
else if(条件2){
在条件1不满足,条件2满足时执行的代码
}
...
else{
以上条件都不满足时实现的代码
}
}