JavaScript学习笔记-基本语法
2017-05-18 11:33
597 查看
一、基本语法
语句和表达式 (statement & expression)概念:
语句:是为了完成某种任务而进行的操作,如:var a = 1+1;。
表达式:是为了得到返回值的计算式,如:1+1。
JavaScript的执行单位是行,代码是一行一行的执行,一般情况下一行就是一个语句。
* 例子:
var a = 1 + 1; // 语句,为了进行某种操作,不需要返回值,分号结尾。 1+1 // 表达式,为了得到返回值,不需要分号。 ;;; // 三个空语句 1+1; 'abc'; // 表达式后加分号,无意义的语句
我们首先使用关键字var声明一个变量,之后执行等号右边的表达式并将表达式的结果赋值给变量。
变量(variable)
概念: 变量是对’值’的引用,使用变量等于引用一个值,每个变量都有一个变量名。
2.1. 变量声明
* 例子:
var a = 1; // 声明变量a,赋值为1。 var a; a = 1; // 声明和赋值分开 var a; // 只声明不赋值,结果为undefined a = 1; // 忘记var,变量提升为全局变量,可以使用delete删除,不推荐。 a // ReferenceError: a is not defined var a, b; // 声明多个变量,推荐写法。 var a = 1; var a; a // 1 重新声明变量无效 var a = 1; var a = 2; a // 2 重新声明赋值,覆盖前一个
var是变量声明的关键字,作用是通知js引擎,要创建一个变量a,使用var声明一个变量a,之后将值1赋值给变量a,之后我们就可以使用变量a来引用值1。
2.2. 变量的提升
* 概念: 代码中所有的变量声明语句都会被提升到头部。
* 原因:JavaScript引擎是工作方式是首先解析代码,获取所有被声明的变量,之后才一行一行的运行代码。
例子:
console.log(a); // undefined 变量声明提升,赋值不提升,所以结果为undefined var a = 1; //相当于 var a; console.log(a); // undefined a = 1; console.log(a); // ReferenceError: a is not defined 变量提升只对使用var声明的变量有效 a = 1;
标识符(identifier)
概念:用来识别具体对象的一个名称,常见有变量名和函数名。
规则:
[Unicode字母 | _ | $] + [Unicode字母| 0-9 | _ | $]{0-~}
例子:
// 合法 a123 _123 $123 π var 临时变量 = 1; //不合法 123 // 第一个字符不能是数字 1abc // 同上 *** // 标识符不能包含星号 a+b // 标识符不能包含加号 -d // 标识符不能包含减号或连词线
JavaScript有一些保留字,不能用作标识符:arguments、break、case、catch、class、const、continue、debugger、default、delete、do、else、enum、eval、export、extends、false、finally、for、function、if、implements、import、in、instanceof、interface、let、new、null、package、private、protected、public、return、static、super、switch、this、throw、true、try、typeof、var、void、while、with、yield。
另外,还有三个词虽然不是保留字,但是因为具有特别含义,也不应该用作标识符:Infinity、NaN、undefined。
注释
// 这是单行注释 /* 这是 多行 注释 */
区块
概念:JavaScript中使用{}将多个相关的语句组合在一起。
作用: 构建其他更加复杂的语法结构,比如for if while function等
{ var a = 1; } a // 1 { let a = 1; } a // ReferenceError: a is not defined
使用var声明变量区块不存在局部作用域,使用let声明变量区块中存在局部作用域
条件语句
// if 语句 if (expression) { statement; } // if else 语句 if (expression) { // then } else { // else } // switch 语句 switch (expression){ case value: break; default: break; } // 三元运算符 (condition) ? expr1 : expr2s;
循环语句
// while 循环 while (expression) { statement } var i = 5; while (i--){ console.log(i) } // for 循环 for (initialize; test; increment) { statement } for (var i = 0; i < 5; i++) { console.log(i) } // 可省略,形成一个无限打印的循环 for (; ;) { console.log('hello world'); // hello world } // do while 循环 do { statement } while (expression); // break语句 跳出循环 var i = 10; while (i--){ console.log(i) if(i === 5) break; } // 打印所有奇数 var i = 0; while (i < 100){ i++; if (i%2 === 0) continue; console.log('i当前为:' + i); }
相关文章推荐
- JavaScript学习笔记——基本语法和变量
- JavaScript学习笔记(一) js基本语法
- JavaScript学习笔记(一)基本概念及语法
- JavaScript学习笔记1--基本语法
- JavaScript学习笔记一 - 基本语法,数据类型、变量
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第19讲_js运行原理_js开发工具介绍_js程序(hello)_js基本语法_学习笔记_源代码图解_PPT文档整理
- JavaScript学习笔记--第3章:基本概念中的语法
- javascript学习笔记:基本语法
- JavaScript 标准参考教程--基本语法 学习笔记
- 【学习笔记】JavaScript——基本语法与数据类型
- JavaScript学习笔记(一) js基本语法
- javascript 学习笔记1基本语法
- javascript 学习笔记(一)DOM基本操作
- JavaScript语法学习笔记
- J2SE学习笔记3 — Java基本语法(9)数组和枚举
- LAMP兄弟连PHP课程学习笔记 第一天 PHP基本语法
- J2SE学习笔记3 — Java基本语法(5)字符串和构建字符串
- accp6.0 《使用javascript增强交互效果》学习笔记ch6 表单基本验证技术
- oracle 最简单的学习笔记,增删改查,PLSQL基本语法,游标,函数,存储过程的实现
- php学习笔记(3):PHP基本语法和数据类型: