2-1 基本数据类型强制转化

1. string,boolean—>number number()

  1. 只能识别纯数字字符串,其他字符输出 Nan
  1. string转化number
  2. <script>
  3. /* string-->number number()
  4. 只能识别纯数字字符串,其他字符输出 Nan
  5. */
  6. var str = "3"
  7. var num = Number(str);
  8. console.log(typeof num);
  9. console.log(Number("3.0"));
  10. console.log(Number("3.00"));
  11. console.log(Number("3px")); //nan 不是一个数字的意思
  12. </script>
  1. boolean转化number
  2. <script>
  3. var a = true // 输出1
  4. var b = false // 输出0
  5. console.log(Number (a)) // 1
  6. console.log(Number (b)) // 0
  7. </script>

2. Number,string—>boolean

  1. 1.string-->boolean<br /> 特点:除了 "" 空字符-->输出为false,其他都为true
  1. var a ="good"
  2. var b = " "
  3. var c = ""
  4. console.log(Boolean (a))
  5. console.log(Boolean (b))
  6. console.log(Boolean (c))
  1. 2.Number-->boolean<br /> 特点:除了 0-->输出为false,其他都为true
  1. var d =0
  2. var e =1
  3. var f =1
  4. console.log(Boolean (d))
  5. console.log(Boolean (e))
  6. console.log(Boolean (f))

3. Number,boolean—>string

  1. <script>
  2. //String()
  3. // tostring()
  4. var num = 10
  5. var b = true
  6. console.log(String (num))
  7. console.log(typeof b.toString() )
  8. </script>

4. false

  1. <script>
  2. //String()
  3. // tostring()
  4. var num = 10
  5. var b = true
  6. console.log(String (num))
  7. console.log(typeof b.toString() )
  8. </script>

2-2 运算符

1. 算数运算符 (+ - * / % )

  1. <script>
  2. /* 算数运算符 + - * / % */
  3. var a =10
  4. var b =20
  5. console.log(a+b); //30
  6. console.log(a-b); //-10
  7. console.log(a*b); //200
  8. console.log(a/b); //0.5
  9. console.log(a%b); //10
  10. console.log(3%4); //3
  11. console.log(4%3); //1
  12. </script>

2. 比较运算 >,<, ==(等于) , !=(不等于)

  1. 最终得到的是boolean值<br /> 在比较运算中也是先将两边的值转为number在计算 <br /> 返回值是boolean值<br /> =是赋值语句, ==才是比较运算
  1. <script>
  2. var a =10
  3. var b =20
  4. console.log(a>b);
  5. console.log(a<b);
  6. console.log(a==b);
  7. console.log(a!=b);
  8. </script>

3. &&(逻辑与) ||(逻辑或) !(逻辑非)

  1. 逻辑与特点:只有两边都为true,结果才为 ture <br /> 只要一边为false,结果为false
  1. console.log(10>5 && 30>20);
  2. console.log(10<5 && 30>20);
  1. 逻辑或<br /> 特点:只要有一边为ture,结果就为ture<br /> 如果两边都为false,结果一定为false
  1. console.log(10>20 || 30>20);
  2. console.log(10<5 || 30<20);
  1. 逻辑非<br /> 特点:
  1. console.log(!(5>10));

4. 三元(三目)

  1. var value = (代码块)? block1:block2; <br /> 代码块 == true 输出block1<br /> 代码块 == false 输出block2
  1. var a = (10<5)?"sada":"撒大声地e";
  2. console.log(a);

5. ++ — 运算

  1. ++如果放在后面 先运算后自增<br /> ++如果放在前面 先自增后运算
  1. <script>
  2. var a = 20
  3. a++;
  4. a++;
  5. console.log(a);
  6. var a = 20
  7. // ++如果放在后面 先运算后自增
  8. // ++如果放在前面 先自增后运算
  9. var b = ++a +20 ;
  10. console.log(a); //输出21
  11. console.log(b); //输出41
  12. </script>

2-3 自动转化(隐式转化)

在算数计算中的转换
再算数计算(+运算除外)中先将值转换为number,在计算
Nan和任意值计算,输出结果都是Nan

  1. <script>
  2. /* 隐式转化 */
  3. /* 在算数计算中的转换
  4. 再算数计算(+运算除外)中先将值转换为number,在计算
  5. Nan和任意值计算,输出结果都是Nan
  6. */
  7. var a = "12"
  8. var b = true
  9. console.log(a-b);
  10. </script>

2-4 +运算

+运算,只要一边为字符串,那么该结果一定为字符串。 +号起拼接符的作用

  1. <script>
  2. console.log("true"+11);
  3. console.log("11" + false);
  4. console.log(("11" +1-true));
  5. </script>