javascript
2011年04月11日
1
--js中什么是原始值?什么是引用值?什么是伪对象?
原始值:就是存放在栈中的简单数据,也就是说,他们的值直接存储在变量的访问的位置。有5个原始类型,即Undefined、Null、Boolean、String、Number。
引用值:是存储在堆中的对象,也就是说,存储的变量处的值是一个指针,指向存储对象的内存处。
CSS伪对象:类是一种数据结构,是面向对象思想的执行者。现代面向对象的语言都支持“类”这种结构。伪类顾名思义就是,不是类的数据结构,因为语言本身不支持(例如vb6.0以前),但是又为了达到类的境界,于是就产生了伪类。通俗点就是伪类和伪娘有些类似,虽然没有女生的本质,但是外表看起来差不多。
2
--本地对象:ECMA-262 把本地对象(native object)定义为“独立于宿主环境的 ECMAScript 实现提供的对象”。
宿主”一般是指寄生的生物选择的寄生体。简单说,就是用户的机器环境,包括操作系统和浏览器。
“本地对象”包含哪些内容:
Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError
由此可以看出,简单来说,本地对象就是 ECMA-262 定义的类(引用类型)。
--宿主对象:ECMAScript中的“宿主”当然就是我们网页的运行环境,即“操作系统”和“浏览器”。
所有非本地对象都是宿主对象(host object),即由 ECMAScript 实现的宿主环境提供的对象。
所有的BOM和DOM对象都是宿主对象。因为其对于不同的“宿主”环境所展示的内容不同。其实说白了就是,ECMAScript官方未定义的对象都属于宿主对象,因为其未定义的对象大
多数是自己通过ECMAScript程序创建的对象。
--内置对象:ECMA-262 把内置对象(built-in object)定义为“由 ECMAScript 实现提供的、独立于宿主环境的所有对象,在 ECMAScript 程序开始执行时出现”。这意味着开
发者不必明确实例化内置对象,它已被实例化了。
同样是“独立于宿主环境”。根据定义我们似乎很难分清“内置对象”与“本地对象”的区别。而ECMA-262 只定义了两个内置对象,即 Global 和 Math (它们也是本地对象,根
据定义,每个内置对象都是本地对象)。
似于isNaN()、parseInt()和parseFloat()方法等,看起来都是函数,而实际上,它们都是Global对象的方法。而且Global对象的方法还不止这些。有关Global对象的具体方法和属
性,感兴趣的同学可以看一下这里:JavaScript 全局对象参考手册
类别:javascript学习
2011年04月11日
1
--js中什么是原始值?什么是引用值?什么是伪对象?
原始值:就是存放在栈中的简单数据,也就是说,他们的值直接存储在变量的访问的位置。有5个原始类型,即Undefined、Null、Boolean、String、Number。
引用值:是存储在堆中的对象,也就是说,存储的变量处的值是一个指针,指向存储对象的内存处。
CSS伪对象:类是一种数据结构,是面向对象思想的执行者。现代面向对象的语言都支持“类”这种结构。伪类顾名思义就是,不是类的数据结构,因为语言本身不支持(例如vb6.0以前),但是又为了达到类的境界,于是就产生了伪类。通俗点就是伪类和伪娘有些类似,虽然没有女生的本质,但是外表看起来差不多。
2
--本地对象:ECMA-262 把本地对象(native object)定义为“独立于宿主环境的 ECMAScript 实现提供的对象”。
宿主”一般是指寄生的生物选择的寄生体。简单说,就是用户的机器环境,包括操作系统和浏览器。
“本地对象”包含哪些内容:
Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError
由此可以看出,简单来说,本地对象就是 ECMA-262 定义的类(引用类型)。
--宿主对象:ECMAScript中的“宿主”当然就是我们网页的运行环境,即“操作系统”和“浏览器”。
所有非本地对象都是宿主对象(host object),即由 ECMAScript 实现的宿主环境提供的对象。
所有的BOM和DOM对象都是宿主对象。因为其对于不同的“宿主”环境所展示的内容不同。其实说白了就是,ECMAScript官方未定义的对象都属于宿主对象,因为其未定义的对象大
多数是自己通过ECMAScript程序创建的对象。
--内置对象:ECMA-262 把内置对象(built-in object)定义为“由 ECMAScript 实现提供的、独立于宿主环境的所有对象,在 ECMAScript 程序开始执行时出现”。这意味着开
发者不必明确实例化内置对象,它已被实例化了。
同样是“独立于宿主环境”。根据定义我们似乎很难分清“内置对象”与“本地对象”的区别。而ECMA-262 只定义了两个内置对象,即 Global 和 Math (它们也是本地对象,根
据定义,每个内置对象都是本地对象)。
似于isNaN()、parseInt()和parseFloat()方法等,看起来都是函数,而实际上,它们都是Global对象的方法。而且Global对象的方法还不止这些。有关Global对象的具体方法和属
性,感兴趣的同学可以看一下这里:JavaScript 全局对象参考手册
类别:javascript学习