4.23 循环语句
Posted xiaokeai233
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4.23 循环语句相关的知识,希望对你有一定的参考价值。
循环语句:
# 一、小数的问题
1. 现象
- 明明只有一位小数,但是最后出来很多位
- 0.1 + 0.7 = 0.799999999999999
2. 原因
- 计算机最终执行或识别的符号只有0和1,二进制
- 计算机中有一套完善的转换机制,所有内容最终都会被解析成二进制
- 计算机对于小数的计算,会产生误差
1. 现象
- 明明只有一位小数,但是最后出来很多位
- 0.1 + 0.7 = 0.799999999999999
2. 原因
- 计算机最终执行或识别的符号只有0和1,二进制
- 计算机中有一套完善的转换机制,所有内容最终都会被解析成二进制
- 计算机对于小数的计算,会产生误差
3. 解决
- 主动保留n为小数,得到数据类型是字符
- ` num = num.toFixed(n); `
- 转成数值
- ` num = Number(num); `
- 主动保留n为小数,得到数据类型是字符
- ` num = num.toFixed(n); `
- 转成数值
- ` num = Number(num); `
# 二、隐式类型转换
- .....
- .....
# 三、三目运算符(三元,表达式)
1. 语法
- `条件 ? 条件为真,值1 : 条件为假,值2`
2. 注意
- 三目其实就是一种简写方式,如果不能简写,那就不用三目
- 三目是个表达式,表达式最终会计算出一个值
3. 应用
```js
var n = 16;
var m = n>10 ? n.toString() : "0"+n;
console.log(m);
```
1. 语法
- `条件 ? 条件为真,值1 : 条件为假,值2`
2. 注意
- 三目其实就是一种简写方式,如果不能简写,那就不用三目
- 三目是个表达式,表达式最终会计算出一个值
3. 应用
```js
var n = 16;
var m = n>10 ? n.toString() : "0"+n;
console.log(m);
```
# 四、逻辑运算符的高级用法
- 所有的隐式类型转换,仅仅发生在该数据被使用时,该数据还是原本的内容
- `||`
- 基础规则
- 或的两边只要出现一个true就是true
- 如果两边都是false,就是false
- 原理
- 如果左侧是true,那么就确定 或 的结果了,不再向右检测
- 如果左侧是false,不能确定结果,需要继续向右检测,不管右侧是啥,结果都停在右侧了
- 所有的隐式类型转换,仅仅发生在该数据被使用时,该数据还是原本的内容
- `||`
- 基础规则
- 或的两边只要出现一个true就是true
- 如果两边都是false,就是false
- 原理
- 如果左侧是true,那么就确定 或 的结果了,不再向右检测
- 如果左侧是false,不能确定结果,需要继续向右检测,不管右侧是啥,结果都停在右侧了
循环语句
- 配合指定的语句,这个语句,叫循环语句
- `while`
- 语法:
```js
var i = 0;
while( i<10 ){
document.write("hello world<br>");
i++;
}
```
- 配合指定的语句,这个语句,叫循环语句
- `while`
- 语法:
```js
var i = 0;
while( i<10 ){
document.write("hello world<br>");
i++;
}
```
- `do while`
- 语法:
```js
var i = 0;
do{
console.log(i);
i++;
}while(i < 10){
console.log("循环结束了");
}
```
- 语法:
```js
var i = 0;
do{
console.log(i);
i++;
}while(i < 10){
console.log("循环结束了");
}
```
- while和do-while的区别
- do-while语句比while语句多执行一次
- do-while语句比while语句多执行一次
- `for`
注意
- 计数器的改变最好放在循环体的最后,除非特殊需要
- 如非特殊需要,千万不能在循环中**额外**改变计数器
- 循环,最好理解执行过程,不要硬记,因为还有循环的嵌套
- 计数器的改变最好放在循环体的最后,除非特殊需要
- 如非特殊需要,千万不能在循环中**额外**改变计数器
- 循环,最好理解执行过程,不要硬记,因为还有循环的嵌套
# 循环的嵌套
- 双层循环
- 双层循环
以上是关于4.23 循环语句的主要内容,如果未能解决你的问题,请参考以下文章