1. 数据类型之间转换

1-1 强制转换

1-1-1 string,boolean—>number

  1. # 1.1 string-->number
  2. 特点:只能识别纯数字的字符串

Number(value)

  1. var a = "10";
  2. var str = "hello"
  3. console.log(Number(a)) //10
  4. console.log(Number(str)) //NaN 不是一个数字
  1. # 1.2 boolean -->number
  2. true --> 1
  3. false -->0

1-1-2 number,string—>boolean

  1. # 1-1 number--boolean
  2. 特殊:0-->false,其他情况都为true
  3. var a = 0;
  4. var b = 10;
  5. console.log(Boolean(a)) //false
  6. console.log(Boolean(10)) //true
  1. # 1-2 string--boolean
  2. 特殊:""-->false

1-1-3 any-boolean

  1. Boolean();

1-2 自动转换 (算术,比较计算)

将数据转换为number,再进行计算(比较) 特殊:+运算中,只要有一边为字符串,那么结果一定字符串。+号起拼接符作用

  1. # 1-1 +,-
  2. var a = true;
  3. var b = 10;
  4. var c = "1";
  5. console.log(a+b); //11
  6. console.log(b+c) //"101"
  7. console.log(a-c) //0
  1. # 1-2 >,<
  2. var a = "hello";
  3. var b = true;
  4. var c = "10";
  5. console.log(a>b);//false NaN>1 NaN和任意值计算,结果都为NaN
  6. console.log(b>c); //false

1-3 Any-Number

  1. Number();
  2. parseInt();
  3. parseFloat();

1-4 Any-String

  1. String();
  2. toString();
  3. +"";

2. 运算符和表达式

2-1 算术运算

  1. +,-,*,/,%
  2. # 先将值转换为number(Number),再进行计算。

Tips: +特殊,如何有一边为字符串,那么+起拼接符作用,结果一定是字符串。

2-2 比较运算(关系)

  1. >,<,>=,<=,==,!=

将值转换为number,再进行比较,返回的是boolean

2-3 逻辑运算

  1. && 两边都为true,结果就为true
  2. || 只要有一边为true,结果就为true
  3. ! 取反
  1. var a = false;
  2. console.log(!a); //

2-4 赋值运算

  1. +=,-=,*=,/=,%=

2-5 三元表达式

  1. var a=(10>4)?10:4

2-6 ++,—

  1. /*
  2. ++放前面先自增,后运算
  3. ++放后面先运算,再自增
  4. */
  1. /*
  2. -- 放前面先自减,后运算
  3. -- 放后面先运算,再自减
  4. */

3. 箭头函数

  1. var go =()=>{
  2. console.log("hello world")
  3. }
  1. # 带参数的箭头函数
  2. var test = (x)=>{
  3. console.log(x);
  4. }
  1. # 箭头函数的简写
  2. var show = ()=>console.log("hello world");
  1. # 带参数的简写
  2. # Tips:只有一个参数,可以省略小括号,只有一段表达式,可以省略大括号
  3. var main = x=>console.log(x);