1-1强制转换

1-1-1string boolean—>number

string—>number

  1. var str="10";
  2. console.log(str);//10
  3. var s="hello world"
  4. console.log(s);//NaN

boolean—>number

  1. true --> 1
  2. false -->0

1-1-2number string—>boolean

number—>boolean

  1. var a=3;
  2. var b=0;
  3. console.log(Boolean(a));//true
  4. console.log(Boolean(b));//false

string—>boolean

  1. ""-->false
  2. var str="hello world";
  3. var s="";
  4. console.log(Boolean(str));//true
  5. console.log(Boolean(s));//false

1-2自动转换

算术

  1. var a="10";
  2. var b=1;
  3. var c=true;
  4. console.log(a+b-c);//100
  5. console.log(a-b+c);//10
  6. console.log(a+c-b);//NaN

比较

  1. var a=true;
  2. var b="10";
  3. var c="hello";
  4. console.log(a>b);//false
  5. console.log(a>c);//false

1-3any-number

  1. var str="12.121212px";
  2. console.log(parseInt(str));//12
  3. console.log(parseFloat(str));//12.121212

1-4anystring

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

1-5运算符和表达式

1-5-1算术运算

  1. +,-,*,/,%
  2. # 先将值转换为number(Number),再进行计算。
  3. var a=true;
  4. var b="13";
  5. var c=b-a;
  6. // var c=Number(b)-Number(a)
  7. console.log(c); //12

1-5-2比较运算

  1. var a=true;
  2. var b="10";
  3. var c="hello";
  4. console.log(a>b);//false
  5. console.log(a>c);//false

1-5-3逻辑运算

  1. console.log(6>4 && 7>4);true
  2. console.log(4>3 && 6>7);false
  3. console.log(3>4 || 3>2);true
  4. console.log(3>4 || 3>5);false
  5. console.log(!(5>6));true

1-5-4赋值运算

  1. var a=4;
  2. // a=a+6;
  3. a+=6;
  4. console.log(a);//10
  5. a-=2;
  6. //a=a-2;
  7. console.log(a);//2

1-5-5三元表达式

  1. var a=(5>4)? "5>4" "4>5"
  2. true:输出第一段"5>4"
  3. false:输出第二段"4>5"

1-5-6++ —

  1. var a=10;
  2. var b=15;
  3. c=++a +2;
  4. d=b++ +4;
  5. console.log(c);13
  6. console.log(d);19
  7. console.log(b);16
  8. console.log(a);11

1-6箭头函数

  1. var go =function(){
  2. console.log("hello world")
  3. }
  4. go(); //hello world
  5. var show = ()=>{
  6. console.log("world")
  7. }
  8. show(); //world
  9. var test =()=>console.log("test");
  10. test(); //test
  1. var go =x=>console.log(x); //10
  2. var sum =(x,y)=>{console.log(x+y)}; //7
  3. go(10);
  4. sum(3,4);

1-7奇怪的运算

  1. var a="21"+4-true+"3";
  2. console.log(a);//2133