`
webcode
  • 浏览: 5941500 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

深入浅出JavaScript(2)—ECMAScript

 
阅读更多

目录:

深入浅出JavaScript(1)—ECMAScript

深入浅出JavaScript(2)—ECMAScript

郑重向大家推荐我的Jquery.ajax系列文章,点击查看

这篇博客,我们继续分析ECMAScript基础,主要涉及语句,函数和运算符.这将有助于我们深入理解javascript原理

一、语句

语句很简单,只要有语言就出的程序员都不会陌生,它和我们java等语言中的语句非常类似,其实就是衍生于我们的传统编程语言。

无非涉及三种结构:顺序,选择,循环。基本上任何问题,我们都可以利用这三种结构经过拆分组合来解决掉。

二、运算符

运算符与我们传统的编程语言也非常相似,废话不多说,看图

详细展开

其中几个需要明确的:

左移运算:它把数字中的所有数位向左移动指定的数量。例如,数字2等于二进制的10,左移5位,变为64,即100000

var intTest=2;

var intResult=intTest<<5

最后intResult==64;

对于AND运算

OR运算

三、函数

Js里,函数其实是一个功能完整的对象,都可以看做是function类的一个实例。

详细展开

其中有一点很有意思,即利用arguments对象模拟函数重载的方法:

用arguments对象判断传递给函数的参数个数,模拟重载。

例如:

function doAdd(){

If(arguments.length==1){

alert(arguments[0]+10);

}else if(arguments.length==2){

alert(arguments[0]+arguments[1]);

}

}

doAdd(10); //输出20

doAdd(30,20); //输出50

function类

闭包:

闭包:

当内部函数在定义它的作用域的外部被引用时,就创建了该内部函数的闭包,如果内部函数引用了位于外部函数的变量,当外部函数调用完毕后,这些变量在内存不会被释放,因为闭包需要它们.

简单看这两句话可能不好理解,我在网上找了两篇文章,感觉写得不错,如果让我整理也不见得比他们整理得好,推荐给大家。

http://www.jb51.net/article/24101.htm

http://www.cnblogs.com/rubylouvre/archive/2009/07/24/1530074.html

总结:

今天主要写了关于javascript核心ECMAScript的基础知识,包括语句,运算符和函数。其中,语句和运算符和java非常相似,对于有语言基础的人来说非常简单。而函数,javascript中的函数为对象,可以看做是function类的实例,注意同名函数不会报错,后者覆盖前者,其中还提到模拟函数重载的方法和一些注意点。

ECMAScript的基础知识大概就这些,了解这些有助于我们深入理解javascript原理。

下次将会写javascript对象的相关东西,谢谢关注。

分享到:
评论

相关推荐

    深入浅出ES6

    深入浅出ES6-中文-高清,适合有JavaScript基础和Java基础的同学

    深入浅出JavaScript对象模型

    JavaScript中的对象 ECMA262规范一直在强调,“ECMAScript是一种基于对 象(Object—Based)的语言,而不是传统的面向对象(Object— Oriented)的语言”。相信绝大多数人不会清楚这句话是什么意 思。我想我们可以把它...

    Vue深入浅出从基础到项目实践课程.txt打包整理.zip

    Vue深入浅出从基础到项目实践课程.txt打包整理.zip

    ES6深入浅出

    欢迎来到 ES6 深入浅出!JavaScript 的新版本离我们越来越近,我们将通过每周一 节的系列课程一起探索 ECMAScript 6 新世界。ES6 中包含了许多新的语言特性,它们 将使 JS 变得更加强大,更富表现力。在接下来的几周内,...

    深入浅出ES6(ES6indepth)

    资源名称:深入浅出ES6(ES6 in depth)内容简介:ECMAscript 包含了什么ECMA (一个类似 W3C 的标准化组织) 是 Javascript 语言的标准化组织。Javascript 正是基于 ECMAscript 标准的实现。...

    深入浅出ES6 简体中文

    幸而我有意弱化了对新信息的执念,开始做一些事情,《深入浅出ES6》就是其中一件。 纵观整个系列,亦即纵观ECMAScript 2015的整个体系,吸取了诸多成功经验:借鉴自CoffeeScript的箭头函数;始于C++项目Xanadu,接着...

    javascript高级教程

    全书从JavaScript语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向对象编程、Ajax与Comet服务器端通信,HTML5表单、媒体、Canvas(包括WebGL)及Web Workers、地理定位、跨文档传递...

    JavaScript 高级程序设计非扫描版

    全书从 JavaScript 语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向 对象编程、Ajax 与 Comet 服务器端通信,HTML5 表单、媒体、Canvas(包括 WebGL)及 Web Workers、 地理定位、...

    JavaScript开发王

    全书从JavaScript语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向地理定位、跨文档传递消息、客户端存储(包括IndexedDB)等新API,还介绍了离线应用和与维护、性能、部署相关的...

    js高级程序设计第三版(高清中文含源码压缩)JavaScript 超级畅销书的最新版

    全书从 JavaScript 语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向 对象编程、Ajax 与 Comet 服务器端通信,HTML5 表单、媒体、Canvas(包括 WebGL)及 Web Workers、 地理定位...

    js高级程序设计第三版

    全书从JavaScript 语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向对象编程、Ajax 与Comet 服务器端通信,HTML5 表单、媒体、Canvas(包括WebGL)及Web Workers、地理定位、跨...

    Javascrpt 高级程序设计(第3版)中文文字版

    全书从JavaScript 语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向对象编程、Ajax 与Comet 服务器端通信,HTML5 表单、媒体、Canvas(包括WebGL)及Web Workers、地理定位、跨...

    js高级程序设计第三版(高清中文含源码压缩)

    全书从 JavaScript 语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向 对象编程、Ajax 与 Comet 服务器端通信,HTML5 表单、媒体、Canvas(包括 WebGL)及 Web Workers、 地理定位...

    Javascrpt高级程序设计

    JavaScript 语言实现的各个组成部分——语言核心、 DOM、 BOM、 事件模型讲起, 深入浅出地探讨了面向 对象编程、 Ajax 与 Comet 服务器端通信, HTML5 表单、 媒体、 Canvas(包括 WebGL) 及 Web Workers、 地理...

    Javascrpt 高级程序设计(第3版)英文

    全书从JavaScript 语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向对象编程、Ajax 与Comet 服务器端通信,HTML5 表单、媒体、Canvas(包括WebGL)及Web Workers、地理定位、跨...

    js高级程序设计非扫描

    JavaScript 语言实现的各个组成部分——语言核心、DOM、BOM、事件模型讲起,深入浅出地探讨了面向 对象编程、Ajax 与 Comet 服务器端通信,HTML5 表单、媒体、Canvas(包括 WebGL)及 Web Workers、 地理定位、跨...

    leetcode中国-FELearningMaterials:前端学习资料

    leetcode中国 说明 前端学习资料 ...DPlayer: video.js: CSS相关 normalize.css: animate.css: 30-seconds-of-css: ...javascript ...ECMAScript ...select2: ...JavaScript-Garden: ...深入浅出React和Redux: React模

    ES6 in depth

    欢迎来到 ES6 深入浅出!JavaScript 的新版本离我们越来越近,我们将通过每周一 节的系列课程一起探索 ECMAScript 6 新世界。ES6 中包含了许多新的语言特性,它们 将使 JS 变得更加强大,更富表现力。在接下来的几周...

Global site tag (gtag.js) - Google Analytics