小数的问题;现象
明明只有一位小数,但是最后出来很多位
0.1 + 0.7 = 0.799999999999999
59.999999999999999 不小于 60
诸如此类问题
原因
计算机最终执行或识别的符号只有0和1,二进制
计算机中有一套完善的转换机制,所有内容,不管是文字,字符,任何数据,图片,声音,视频,最终都会被解析成二进制
计算机对于小数的计算,会产生误差
解决
主动保留n为小数,得到数据类型是字符
num = num.toFixed(n);
转成数值
num = Number(num);
三目运算法:语法
条件 ? 条件为真,值1 : 条件为假,值2
注意
三目其实就是一种简写方式,如果不能简写,那就不用三目
三目是个表达式,表达式最终会计算出一个值
应用
var n = 16;
var m = n>10 ? n.toString() : “0”+n;
console.log(m);
逻辑运算符的高级用法:所有的隐式类型转换,仅仅发生在该数据被使用时,该数据还是原本的内容
||
基础规则
或的两边只要出现一个true就是true
如果两边都是false,就是false
原理
如果左侧是true,那么就确定 或 的结果了,不再向右检测
如果左侧是false,不能确定结果,需要继续向右检测,不管右侧是啥,结果都停在右侧了
!
规则:取反
灵活利用非,实现其他转布尔
循环结构:程序的三大结构
顺序:代码自上而下,按顺序执行
分支:根据指定的条件,选择不同的过程执行
循环:重复
循环的意义:节省操作,减少代码冗余
循环的三要素
计数器的创建
执行条件(停止条件)的设定
计算器的改变
循环语句
配合指定的语句,这个语句,叫循环语句
while
语法:
var i = 0;
while( i<10 ){
document.write("hello world<br>");
i++;
}
do while
语法:
var i = 0;
do{
console.log(i);
i++;
}while(i < 10){
console.log("循环结束了");
}
while和do-while的区别
do-while语句比while语句多执行一次
注意
计数器的改变最好放在循环体的最后,除非特殊需要
如非特殊需要,千万不能在循环中额外改变计数器
循环,最好理解执行过程,不要硬记,因为还有循环的嵌套