Java Web Lesson 11
1. 每一个函数对象都有一个 length 属性,表示该函数期望接收的参
数格式。它与函数的 arguments 不同, arguments.length 表示函数
实际接收的参数格式。
2. JavaScript 中有五种原始数据类型:Undefined、Null、Boolean、
Number 以及 String。
3. Undefined 数据类型的值只有一个:undefined。
4. Null 数据类型的值只有一个:null。
5. Boolean 数据类型的值有两个:true 和 false。
6. JavaScript 中没有 char 数据类型。
7. typeof 是一元运算符,后跟变量的名称,用于获取变量的数据类
型,其返回值有 5 个:undefined、boolean、number、string 以及
object。
8. 在 JavaScript 中,如果函数没有声明返回值,那么会返回 undefined。
9. null 与 undefined 的关系:undefined 实际上是从 null 派生出来的。
10. 强制类型转换: 在 JavaScript 中有 3 种强制类型转换: Boolean(value),
Number(value),String(value)。
11. 在 JavaScript 中,对于函数中定义的变量来说,加 var 表示局部变
量,不加 var 表示全局变量。
12. 在 JavaScript,所有对象都是从 Object 对象继承过来的。Object 中
的属性是不可枚举的(propertyIsEnumerable 返回 false),因此无法
通过 for…in 语句得到其中的属性。
13. 在 JavaScript 中,可以动态添加对象的属性,也可以动态删除对象
的属性。
14. 在 JavaScript 中定义对象的第二种方式:
15. 对于 JavaScript 数组的 sort 方法来说,它会先将待排序的内容转换
为字符串(调用 toString()方法) ,按照字符串的先后顺序进行排序。
16. JavaScript 中定义对象的几种方式(JavaScript 中没有类的概念,只
有对象) :
1) 基于已有对象扩充其属性和方法:
2)工厂方式
带参数的构造方法:
让一个函数对象被多个对象所共享,而不是每一个对象拥有一个函数
对象。
3) 构造函数方式
可以在构造对象时传递参数
4)原型( “prototype” )方式
如果使用原型方式对象,那么生成的所有对象会共享原型中的属性,
这样一个对象改变了该属性也会反应到其他对象当中。
单纯使用原型方式定义对象无法在构造函数中为属性赋初值,只能在
对象生成后再去改变属性值。
使用原型+构造函数方式来定义对象,对象之间的属性互不干扰,各
个对象间共享同一个方法
5) 动态原型方式:在构造函数中通过标志量让所有对象共享一个
方法,而每个对象拥有自己的属性。
17. JavaScript 中的继承。
1) 对象冒充
2) call 方法方式。
call 方法是 Function 对象中的方法,因此我们定义的每个函数都拥有
该方法。可以通过函数名来调用 call 方法,call 方法的第一个参数会
被传递给函数中的 this,从第 2 个参数开始,逐一赋值给函数中的参
数。
3) apply 方法方式
4)原型链方式(无法给构造函数传参数)
1. 每一个函数对象都有一个 length 属性,表示该函数期望接收的参
数格式。它与函数的 arguments 不同, arguments.length 表示函数
实际接收的参数格式。
2. JavaScript 中有五种原始数据类型:Undefined、Null、Boolean、
Number 以及 String。
3. Undefined 数据类型的值只有一个:undefined。
4. Null 数据类型的值只有一个:null。
5. Boolean 数据类型的值有两个:true 和 false。
6. JavaScript 中没有 char 数据类型。
7. typeof 是一元运算符,后跟变量的名称,用于获取变量的数据类
型,其返回值有 5 个:undefined、boolean、number、string 以及
object。
8. 在 JavaScript 中,如果函数没有声明返回值,那么会返回 undefined。
9. null 与 undefined 的关系:undefined 实际上是从 null 派生出来的。
10. 强制类型转换: 在 JavaScript 中有 3 种强制类型转换: Boolean(value),
Number(value),String(value)。
11. 在 JavaScript 中,对于函数中定义的变量来说,加 var 表示局部变
量,不加 var 表示全局变量。
12. 在 JavaScript,所有对象都是从 Object 对象继承过来的。Object 中
的属性是不可枚举的(propertyIsEnumerable 返回 false),因此无法
通过 for…in 语句得到其中的属性。
13. 在 JavaScript 中,可以动态添加对象的属性,也可以动态删除对象
的属性。
14. 在 JavaScript 中定义对象的第二种方式:
15. 对于 JavaScript 数组的 sort 方法来说,它会先将待排序的内容转换
为字符串(调用 toString()方法) ,按照字符串的先后顺序进行排序。
16. JavaScript 中定义对象的几种方式(JavaScript 中没有类的概念,只
有对象) :
1) 基于已有对象扩充其属性和方法:
2)工厂方式
带参数的构造方法:
让一个函数对象被多个对象所共享,而不是每一个对象拥有一个函数
对象。
3) 构造函数方式
可以在构造对象时传递参数
4)原型( “prototype” )方式
如果使用原型方式对象,那么生成的所有对象会共享原型中的属性,
这样一个对象改变了该属性也会反应到其他对象当中。
单纯使用原型方式定义对象无法在构造函数中为属性赋初值,只能在
对象生成后再去改变属性值。
使用原型+构造函数方式来定义对象,对象之间的属性互不干扰,各
个对象间共享同一个方法
5) 动态原型方式:在构造函数中通过标志量让所有对象共享一个
方法,而每个对象拥有自己的属性。
17. JavaScript 中的继承。
1) 对象冒充
2) call 方法方式。
call 方法是 Function 对象中的方法,因此我们定义的每个函数都拥有
该方法。可以通过函数名来调用 call 方法,call 方法的第一个参数会
被传递给函数中的 this,从第 2 个参数开始,逐一赋值给函数中的参
数。
3) apply 方法方式
4)原型链方式(无法给构造函数传参数)
5)混合方式(推荐)
$(document).ready(function(){
});