第二章:词法结构
;function a(){alert(2)};//前面的分号保证正确地语句解析
第三章:类型、值和变量
基本概念:
1.数据类型---能够表示并操作的值的类型叫做数据类型。
2.变量---是一个值的名称,通过这个名称来获得对值的引用。
数据类型
JS中分为两大类,基本数据类型,对象数据类型。
其中基本数据类型包括:数值,字符串,布尔,undefined,null,symbol
对象数据类型:无序对象,有序对象(数组),函数,Date,RegExp,Error
基本数据类型----数字
//复杂运算可以通过Math对象
Math.pow(2,53)
基本数据类型---文本
//空字符串的长度为0
转义字符
如 \n \t 等
字符串可以当做只读数组
var s = 'hello world!';
s[0] //h
s[s.length-1];//!
注、字符串方法,字符串正则方法
基本数据类型---undefined null
使用 . 或者 [ ] 来存取这两个值的成员或者方法都会产生一个错误
Object(null);//object{};
Object(undefined);//object{}
变量
**变量提升
console.log(scope);//undefined
var scope = 'global';
function f(){
console.log(scope);//undefined***注意这里不是‘global'
var scope = 'local'
console.log(scope);//'local'
}
console.log(scope);//'global'
作用域链
Javascript是基于词法作用域的语言:通过阅读包含变量定义在内的数行源码就能知道变量的作用域
第四章:表达式和运算符
第五章:语句
switch(n){
case 1://dosomething break;
case 2://dosomething break;
case 3://dosomething break;
default://dosomething break;
}
**
语句小结:
break //退出最内层循环或者退出switch语句,又或者退出babel指定的语句
continue //重新开始最内层的循环或重新开始babel指定的循环。
**
第六章:对象
基本概念
对象最常见的用法是创建,设置,查找,删除,检测,枚举它的属性。
属性特性:除了名字和值以外,每个属性还有一些与之相光的值,包括可写,可枚举,可配置
对象特性:对象的原型,对象的类,对象的扩展标记
对象的原型是指指向另外一个对象,本对象的属性继承自它的原型对象。
对象的类是一个标识对象类型的字符串。
对象的扩展标记指明是否可以像对象添加新属性。
创建对象
对象直接量创建对象
var empty = {};
通过new创建对象
var new = new Date();
原型
所有通过对象直接量创建的对象都具有同一个原型对象,并可以通过JS代码Object.prototype获得对原型对象的引用。
通过new和构造函数条用创建的对象的原型就是构造函数的prototype
Object.create();
第七章:数组
数组方法
//concat();
var a = [1,2,3];
a.concat([2]);//[1,2,3,2];
var b =[{x:1,y:2}];
b.concat([{x:2,y:3}];//[{...},{...}]
//slice();
var c = ['a','b','c'];
c.slice(0,1);//['a','b']; c==>['a','b','c']
//splice
var a= [1,2,3,4,5];
a.splice(2,0,'a','b');//a===>[1,2,'a','b',3,4,5]