《Javascript 权威指南 第六版》

 

第一章:JavaScript概述

 

1.动态的、弱类型编程语言。    语法模仿java,原型参考Self。 

2.客户端javascript

做本章的demo哦! 必须做!    整理到webstrom中哦! 

 

 

第二章:JavaScript语言核心:词法结构

 

1.区分大小写

2.标识符:字母、数字、下划线、$; 开头不能是数字。

 

  第三章:JavaScript语言核心:类型、值、变量

 

1.数据类型:   原始类型(数字、字符串、布尔、null、undefined)         对象类型(对象、数组、函数)

                     原始类型的值是不变的(不可变的原始值)         

  a:数字,不区分整数值和浮点数值,所有数字都用浮点数值表示。

2.javascript的GC机制! 

3.\  转义字符

4. var s = "hello world";

  s.charAt(0);          //  h 

    s.charAt(s.length -1);        // d

    s.substring(1,4);         // ell    2~4

    s.slice(-3);        //  rld     从后往前

    s.indexOf("l");       //  2    字符“l”第一次出现的位置    lastIndexOf()正好相反哦! 

    s.split(",");                     //   将字符串分割为子串     ["hello","world"]

    s.replace("h","H");     // Hello world      字符替换

5.模式匹配:正则表达式

6. 布尔:    false:undefined、null、0、NaN、空字符串

7.null        typeof null :object      

   undefined      typeof undefined: undefined                    所以  null ==== undefined 为false

8.数字、字符串、布尔值    都有包装对象。      按照java的来理解,  成为对象,就可以使用对象的方法和属性。

9.对象的比较: 引用的比较,当两个引用同一个对象的时候,它们才是相等的哦! 

10.数据类型的转换。             原始类型和对象类型的转换。

11.变量提升   函数提升 

 

第四章:JavaScript语言核心:表达式和运算符

 

1.算术运算符、比较运算符、逻辑运算符、赋值运算符、位运算符、逻辑运算符

   位运算符:按位与、或、非、异或、左移、带符号右移

 

  第五章: JavaScript语言核心:  语句

 

1.语句:条件、循环(while    do while    for     for in)、跳转

2.声明提升:声明提升    初始化

3.严格模式

 

第六章: JavaScript语言核心: 对象

 

1.基于原型的继承

 

2.Javascript对象: 内置对象、宿主对象、自定义对象。

                   属性: 自有属性、继承属性。

 

3.类型:强类型    弱类型     无类型。  

 

4.检测属性: in   包括继承属性                                                       属性(自有属性和继承属性)

                   hasOwnProperty()  只有时对象的自有属性才返回true

                   propertyIsEnumerable()

                   !==   判断一个属性是否是undefined

 

5.对象的三个属性(原型属性、类属性、可扩展性属性)

  a:对象的原型属性是用来继承属性的。

    创建对象的方式: 1.对象直接量        2.new创建        3.Object.create

    p.isPrototypeOf(o)   检测p是否是o的原型。

  b:对象的类属性是一个字符串,表示对象的类型信息。

  c:对象的可扩展性:是否可以给对象添加新属性,所有内置对象和自定义对象都是可扩展的。 宿主对象的可扩展性由js引擎定义。

 

6.序列化对象

   对象序列化是指将对象的状态转换为字符串,也可以将字符串还原为对象

   JSON.stringify()   JSON.parse() 用来序列化和还原Javascript对象。   (Josn是javascript的子集,你就记住了, javascrip object notation)

   深拷贝和浅拷贝!

 

  

          第七章: JavaScript语言核心:数组

 

1.javascript中数组是无类型的哦! 

2.稀疏数组:索引不连续,包含从0开始的不连续的数组。

3.javascript数组没有越界一说! 

4.join()    reverse()   sort()  concat()    slice()

 

 

 第八章: JavaScript语言核心:函数

1.函数调用上下文   ——》 this

2.javascript中,函数即对象。

3.调用的4种方式:   函数调用 : 调用上下文this——》全局对象或nudefined(严格模式下)

                             方法调用:调用上下文——》当前方法所属的对象。

                             构造函数调用:

           间接调用:call()   apply()

                             

4.javascript中this是一个关键字,不是变量,也不是属性名,javascript语法不允许给this赋值。

5.闭包

6.函数的属性、方法和构造函数

 

     第九章: JavaScript语言核心:类和模块

1.javascript中,每一个对象都从原型继承属性。   Object.prototype获得原型对象的引用。  

   Object.prototype包含一个不可枚举属性constructor。 其值是一个函数对象。

2.自有属性和继承属性。  

   查询对象o的属性x,如果o中不存在x,那么将从对象o的原型对象中查询属性x。 如果此原型对象中没有,且此原型对象还有原型对象,就继续在此对象原型的原型

   上继续找,直到找到或者原型为null为止。  对象的原型属性构成一条链,通过它可以实现属性的继承

   继承属性在原型对象上,自有属性在对象自身上,对象可以获取原型的属性,但设置属性只能在自身。自己设置了属性,就覆盖了原型属性,自己有了就不用继承原型

   的属性了。

 

  第十章: JavaScript语言核心:正则表达式  模式匹配

1.regular expression

 

 

第十一章:Javascript语言的核心:Javascript的子集和扩展

 

 

 

第十二章:Javascript语言的核心:服务器端JavaScript

 

 

 

第二部分   客户端Javascript

1.内置  宿主  自定义

 

 

 

                   

 

 

 

 

 

posted @ 2017-01-11 21:29  风茗  阅读(455)  评论(0编辑  收藏  举报