JavaScript类型·对象·函数
来源:互联网 发布:java类的命名规范 编辑:程序博客网 时间:2024/06/03 10:36
ECMAScript
是一种由Ecma国际通过ECMA-262标准化的脚本程序设计语言,它往往被称为JavaScript
或JScript
,但实际上后两者是ECMA-262标准的实现和扩展。
ECMAScript对象
定义为“属性的无序集合,每个属性存放一个原始值、对象或函数”
- 对象由特性
attribute
构成,特性可以是原始值,也可以是引用值。如果特性存放的是函数,它将被看作对象的方法method
,否则该特性被看作对象的属性property
。 ECMAScript
中的所有对象的所有属性和方法都是公用的。
ECMAScript对象类型
- 本地对象:独立于宿主环境的
ECMAScript
实现提供的对象,即引用类型。 - 内置对象:由
ECMAScript
实现提供的、独立于宿主环境的所有对象,在ECMAScript
程序开始执行时出现的,即Global
和Math
,每个内置对象都是本地对象。 - 宿主对象:所有非本地对象都是宿主对象
host object
,即由ECMAScript
实现的宿主环境提供的对象。所有BOM
和DOM
对象都是宿主对象。
JavaScript创建对象
//混合构造函数和原型方式function Person(name,age){ //构造函数中定义的属性,这些属性每次创建对象都会被创建一次 this.name=name; this.age=age; this.friends=new Array("Mike","John");}Person.prototype.showFriends=function(){ //原型方式中定义的属性,这些属性只会被创建一次, alert(this.friends);}//动态原型function Person(name,age){ this.name=name; this.age=age; this.friends=new Array("Mike","John"); if(typeof Car._initialized==="undefined"){ Car.prototype.showFriends=function(){ alert(this.friends); } } Car._initialized=true;}
数据类型type
- 原始类型
primitive type
Number
:不区分整数和浮点数。String
:以单引号’或双引号”括起来的任意文本。Boolean
:只有true
、false
两种值。Null
:只有一个专用值null
。Undefined
:只有一个值,即undefined
。当声明的变量未初始化时,该变量的默认值是undefined
。
- 引用类型(本地对象)
Object
,Function
,Array
,…String
,Boolean
,Number
,Date
,RegExp
,…Error
,EvalError
,RangeError
,ReferenceError
,SyntaxError
,TypeError
,URIError
,…
函数Function
**ECMAScript的函数实际上是功能完整的对象。
函数名只是指向该函数对象的引用值(地址)。
尽管可以使用Function
构造函数创建函数,但最好不要使用它,因为用它定义函数比用传统方式要慢得多。不过,所有函数都应看作Function
的实例。**
//用Function类直接创建函数var function_name = new function(arg1, arg2, ..., argN, function_body);//等价于直接定义函数function function_name(arg1, arg2,...,){//这些参数必须是字符串 function_body;}
闭包
指的是词法表示包括不被计算的变量的函数,也就是说,函数可以使用函数之外定义的变量。
var sMessage = "hello world";function sayHelloWorld() { //sayHelloWorld()函数根本不接受参数,它使用的值是从执行环境中获取的。 alert(sMessage);}sayHelloWorld();
该脚本被载入内存后,并没有为函数sayHelloWorld()
计算变量 sMessage
的值。该函数捕获sMessage
的值只是为了以后的使用,也就是说,解释程序知道在调用该函数时要检查sMessage
的值。sMessage
将在函数调用sayHelloWorld()
时(最后一行)被赋值,显示消息"hello world"
。
阅读全文
0 0
- JavaScript类型·对象·函数
- 面向对象的 Javascript 函数重载和类型检查
- 面向对象的 Javascript 函数重载和类型检查
- isArray()函数(JavaScript中判断对象类型的种种方法)
- JAVASCRIPT随记-使用偏函数判断对象类型
- JavaScript对象、函数、数组、类型等(干货)
- Javascript Function类型(函数对象)及变量
- JavaScript总体的介绍【JavaScript介绍、定义函数方式、对象类型、变量类型】
- Javascript的对象类型
- javascript 对象类型检查
- javascript:对象类型检查
- javascript 对象类型
- Javascript 对象类型
- javascript 对象类型
- JavaScript对象类型详解
- JavaScript对象类型
- JavaScript 对象类型
- JavaScript引用类型-函数
- 02-线性结构4 Pop Sequence
- Distance
- Symmetric Tree [LeetCode 101]
- 习题3.2
- Git 学习笔记 ——初级
- JavaScript类型·对象·函数
- ThinkPHP快速简单实现Ajax地区三级联动(很详细)
- Numpy学习笔记[转载]
- 一个项目:文件的上传和下载
- 关于VMvare上虚拟机原本可以上外网但是和主机 ssh 连上之后连不了外网
- 例题7-11 宝箱(Zombie's Treasure Chest, Shanghai 2011, UVa12325)
- Palindrome URAL
- 用hibernate5进行查询时获取单个结果问题
- 欢迎使用CSDN-markdown编辑器