ECMAScript陋解(1.0)

原创 2013年12月06日 11:19:41

越简单的东西,越提现本质。只有简单,才可以幻化出无穷的可能。ECMAScript作为JavaScript的语言核心,便是如此。

任何程序操纵的都是数据,而我们,则是通过变量这个中转来体现对数据的绝对控制,因为数据永远只是抽象。因此我们描述事物的时候总需要借助一个名称或者代词来指代那个事物,在ECMAScript中那就是变量的职责了。

变量所指代的东西就是数据,ECMAScript中简单来说,有两类数据形式,值和引用。值通常表示很直接的数据,而且就是数据本身;引用则绕了个弯,并不是数据的本体,而只是一些数据的引用。展开来说,值形式的直接数据有number,string,boolean,如果一个变量指代它们,那么该变量所指代的就是它们本身。引用形式只有object,它其实是值数据的一个集合体,一个团体,好像是它内部拥有一些特殊的变量,变量直接属于哪个object,所以引用也可以说是对象。

一句话,变量可以是值或者引用,引用或说对象是一些直属变量的集合。当然,这是理性情况,理想总是美好的,简洁的,但事实总会有些出入。

ECMAScript中还有一些特殊的玩意儿,undefined,null ,function。简单说undefined是一个没有值的值,null是一个不是对象的对象。也就是说undefined存在的意义就是说明某个变量它指代的应该是值,只是还没有被真正赋予,同样null指代的是一个对象或说引用,只是没有被赋予。function更特殊一点,它在ECMAScript里头是一个对象,只是它有着普通对象所不具备的一些特殊功能。function拥有一个不能直接看见的constructor,就是一段代码,一段操作,没错,它就是操作本身(严格说是操作的命令,操作本身肯定是硬件的事了),它不属于数据(或说它是特殊的数据,不是拿来被操纵的数据,虽然也可以被操纵),它就如同超自然的存在可以去操纵任何数据。而我们写下的每一行代码,也可以认为都是constructor的内容(对计算机内部的数据来说我们确实是超自然的存在啊,哈)。打个不恰当的比喻,如果变量是人,值是个人,对象是团队,而constructor里头的东西就是自然之力,简单说就是神吧,而function这个特殊的团体,就是神的代言团队(所以编写代码的人就是众神之神了)。所以constructor就扮演了催生万物和控制万物的角色。在ECMAScript中,值是没法独立存在的,必须依靠一个对象,也就是说只有团体才能催生个人,个人不能突然出现。而对象的催生要么依靠其他对象(严格来说,这不是催生),要么就只剩下万能的constructor了。所以每个对象都会有一个印记,代表了催生该对象的constructor。于是原本简单和谐的理想,出现了我们这样想要操纵世界的众神之神,变得异常复杂,但也变得充满生机,由于爆发出来的世界过于庞大,渐渐也出现了等级制度。


javascript的创世神话敬请期待。


关于ListView优化陋解

listView:是适配器视图,即可以建立新的布局(Item),通过setAdapter()方法,将布局添加给listView;         基于其原理,ListView的优化有四种方式: 一、...
  • ZABone
  • ZABone
  • 2016年10月16日 20:03
  • 143

ECMAscript到底是什么?它和JavaScript的关系?

要讲清楚这个问题,需要回顾历史。1996年11月,JavaScript的创造者Netscape公司,决定将JavaScript提交给国际标准化组织ECMA, 希望这种语言能够成为国际标准。次年,ECM...
  • liona_koukou
  • liona_koukou
  • 2016年08月17日 10:23
  • 2591

ECMAScript 6 入门 个人笔记(一)

首先声明,这个笔记是我看阮一峰前辈的《ECMAScript 6 入门》后自己做的笔记,事实上这甚至不能说是笔记,只能说是摘要,完全是自己日后复习用的。我习惯于做电子版的笔记,所以顺手发上来,或许对其他...
  • diaotai
  • diaotai
  • 2016年11月06日 22:02
  • 770

ECMAScript 2015官方文档翻译(一)

以下内容为翻译软件结合自己人工翻译,如有错误欢迎指正。 Introduction       这个ECMA标准定义了ECMAScript2015语言。这是第六版的ECMAScript语言规范。自1...
  • qiyuanhjc
  • qiyuanhjc
  • 2017年06月19日 15:39
  • 646

ECMAScript5引用类型 && ECMAScript6类(1)

ECMAScript5引用类型 && ECMAScript6类 的理解
  • happystareve
  • happystareve
  • 2017年06月08日 21:55
  • 112

浅谈ECMAScript和JavaScript的关系

1、ECMAScript是JavaScript的规格,JavaScript是ECMAScript的一种实现,在日常场合,这两个词是可以互换的。 JavaScript的创造者Netscape公司,将Ja...
  • zhouziyu2011
  • zhouziyu2011
  • 2017年04月07日 17:19
  • 726

Date类型——ECMAScript

简介(1)ECMAScript 中的 Date 类型是在早期 Java 中的 java.util.Date 类基础上构建的(2)Date 类型使用自 UTC(Coordinated Universal...
  • iamcgt
  • iamcgt
  • 2017年06月26日 11:22
  • 620

ECMAScript位运算符

学习到了ECMAScript位运算符,但是只能出结果,却不知道原理是什么。 位运算符有七种,分别是:位非NOT(~)、位与AND(&)、位或OR(|)、位异或XOR(^)、左移(>)、无符号右移(...
  • u013037201
  • u013037201
  • 2015年06月28日 11:00
  • 1360

ECMAScript正则表达式

A, \{d}表示单个数字, \{d}{n}表示n个数字的序列, \{d}{3}匹配3个数字的序列 B, 在方括号中的字符集表示匹配这些字符中任意一个, [-. ]匹配一个短横线,一个点或一个空格(点...
  • chenmeng729970897
  • chenmeng729970897
  • 2016年10月22日 14:26
  • 671

ECMAScript 6 十大特性

转自:http://www.oschina.net/news/71566/es6-developers-will-have-to-know 感谢分享!!!ES6(ECMAScript2015)的出现...
  • haoaiqian
  • haoaiqian
  • 2017年05月29日 20:19
  • 849
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ECMAScript陋解(1.0)
举报原因:
原因补充:

(最多只允许输入30个字)