Javascript入门-基本语法

【摘】http://javascript.ruanyifeng.com/

JavaScript 的标准叫ECMAScript。目前有:ES3、ES5(IE7不支持)、ES6(IE8不支持)、ES7、ES8

变量的声明和赋值
1、一个变量既声明又赋值var a;a=1 或者 一个变量不声明只赋值a=1
2、如果一个变量只声明不赋值var a,使用该值时为undefined
3、如果一个变量既不声明又不赋值,使用该值时 报错

变量的提升(hoisting)
原因:JavaScript 引擎的工作方式是,先解析代码,获取所有被声明的变量,然后再一行一行地运行
结果:表现为,所有的变量的声明语句,都会被提升到代码的头部

console.log(a); var a=1;
等价于
var a;console.log(a); a=1;
输出结果undefined

标识符
首字符:字母 或 美元符号($) 或 下划线(_
后面的字符:字母 或 美元符号($) 或 下划线(_)或 数字(0-9
ps:中文是合法的标识符var 临时变量 = 1;

IF结构常见错误

//exmple1
if(x=0){
  console.log("true");
}else{
  console.log("false");
}//输出:false

//exmple2
if(y=1){
  console.log("true");
}else{
  console.log("false");
}//输出:true

//exmple3
if(2=x)//报错

标签(label)

//break命令后面加上了top标签(注意,top不用加引号),满足条件时,直接跳出双层循环
top:
  for (var i = 0; i < 3; i++){
    for (var j = 0; j < 3; j++){
      if (i === 1 && j === 1) break top;
      console.log('i=' + i + ', j=' + j);
    }
  }
//break语句后面不使用标签,则只能跳出内层循环,进入下一次的外层循环
top:
  for (var i = 0; i < 3; i++){
    for (var j = 0; j < 3; j++){
      if (i === 1 && j === 1) break;
      console.log('i=' + i + ', j=' + j);
    }
  }

你可能感兴趣的:(Javascript入门-基本语法)