JavaScript语言特性
JavaScript是一门动态的,弱类型,基于原型的动态语言。用一句话“一切皆对象”描述在好不过了。
动态性指要为属性赋值时,不必先创建一个字段,只需在使用时赋值即可。
弱类型指数据类型无需声明时指定,解释器会根据上下文进行实例化。
对象与JSON
JSON是JavaScript中对象的字面量,是对象的表示方法,通过使用JSON,可以减少中间变量,使代码更加清晰直观。使用JSON,可以动态创建对象,而不必通过类来实例化,提高了编码效率。
原型对象与原型链
原型是JavaScript特有的概念,通过原型,可以实现继承,从而体现对象的层次关系。由于本身基于原型,使得每个对象都有一个prototype值,而这个prototype本身就是就是一个对象,因此本身就有自己的原型,这样就构成了一个链结构。
当访问一个属性时,解析器需要从下向上遍历这个链结构,直到该属性,若此对象没有该属性,则返回undefined。比如下面的例子:
|
|
继承与重载
|
|
通过原型链,可以实现继承/重载等面向JavaScript代码,当然这个机制并非基于类,而是基于原型。
this指针
在JavaScript中,this表示当前上下文,是对调用者的引用。这里要注意,this值并非函数如何声明而确定,而是在调用时确定。
使用对象
|
|
JSON及其使用
|
|
未完待续。。。