1.js是什么

2.js引入方式

3.js注释方式

4.js输出方式
  在浏览器窗口输出
  alert()  警告框

  在文档里输出
  document.write()

  在控制台输出
  console.log()

5.数据类型
  1)字符串类型  string

  2)数字类型   number

  3)布尔类型   boolean    (true/false)

  4) null

   5)undefined

 
  数组 / 对象 

6.变量
 1)声明变量   
    var  变量名称;

 2)变量命名规则
    1> 变量名必须以字母,下划线,美元符号开头,后面可以跟字母,下划线,美元符号或数字
    2> 变量区分大小写
    3> 变量名不能使用关键字与保留字
    4> 变量名起名尽量有含义,见名知意。

 3)赋值运算符  =
    把右侧值赋值给左侧变量
   var num = 10;

 4)算术运算符  + - * /  %
  + 加号
  1> 加号两侧同时为数字,表示加法运算
  2> 加号两侧任何一侧为字符串,表示字符串拼接

 - * /  %
  1> 符号两侧同时为数字,进行对应的算术运算
  2> 符号两侧的任何一侧为非数字,运算时会把该侧转换为数字,转换成功,进行对应算术运算,转换失败,得到结果NaN(Not a Number)

i++  i--
  
++i  --i

5)比较运算符   返回值:布尔值
  >   <   >=   <=   ==  !=   ===

6)逻辑运算符
  && 逻辑与
   true && true      true
   false && true     false
   true && false     false
   false && false    false
 
  逻辑与两侧同时为true,才为true,其他情况均为false
 
   ||    逻辑或
   true || true      true
   false || true     true
   true || false     true
   false || false    false

  逻辑或两侧同时为false,才为false,其他情况均为true

   !     逻辑非
   !true    false
   !false   true
  非真即假,非假即真

  !!true   true
  !!false  false

7) 三元运算符
  条件 ? 语句1 : 语句2;
  条件成立,执行语句1,否则执行语句2

window对象方法
 alert()   警告框   无返回值

 confirm()  确认对话框   返回值:布尔值
 点击【确认】按钮,返回true,点击【取消】按钮,返回false

 prompt("提示内容" , 初始值)  提示输入对话框   
 点击【确认】按钮,返回输入框中的值,点击【取消】按钮,返回null
 

 8.分支
 1)单分支

if(条件){
      语句;
   }


 条件成立,执行语句

 2)双分支

if(条件){
      语句1;
   }else{
      语句2;
   }


 条件成立,执行语句1,条件不成立执行语句2

 3)多分支  常常用于区间段判断

if(条件1){
    语句1;
  }else if(条件2){
    语句2;
  }
  ...
  else{
   语句;
  }


条件1成立,执行语句1,否则看条件2是否成立,条件2成立,执行语句2,否则,.... ,若上述条件都不成立,执行else后的语句

 4)switch   常用于等值判断

switch(表达式){
    case 常量1:
       语句1;
       break;
     case 常量2:
       语句2;
       break;
      ....
     default:
       语句;
  }

 9.循环
 1)while
  while(条件){
    循环操作;
  }

 条件成立,执行循环操作
特点:先判断 再执行

跳转语句 break continue 区别

break  跳出整个循环  循环停止
continue  跳出当前循环  循环继续  进入下一轮

10.函数
1.预定义函数
 eval(参数)   把字符串当做js执行

 isNaN(参数)   会进行类型转换
 Number.isNaN(参数)   不会进行类型转换
 判断参数是否是NaN   是NaN返回true,不是NaN,返回false  

  inFinite(参数)  判断参数是否是有限数值  是有限数值 返回true,否则返回false

  escape(参数)  把参数字符串进行编码
  uneascape(参数)  把参数字符串进行解码

2.自定义函数
 1)定义函数
 function 函数名(){
     函数体;
 }

 注意:
  1.函数名起名要有含义
  2.函数名一般是唯一的

函数定义好后,不会自动执行,需要调用才能执行
 2)调用函数
  函数名();

 3)作用域
  全局作用域
  局部作用域(函数作用域)

 4)返回值
  return 返回值;

 5)匿名函数
 function(){
  函数体;
 }
 调用

var fn = function(){ }
  fn(); (function(){ })();
  +function(){ }();
  -function(){ }();
  ~function(){ }();
  !function(){ }();