深入浅出JavaScript(2)—ECMAScript

原创 2015年07月09日 10:32:41

这篇博客,我们继续分析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对象的相关东西,谢谢关注。

版权声明:本文为博主http://www.feixueteam.net原创文章,未经博主允许不得转载。

深入浅出JavaScript—ECMAScript

你真的了解JavaScript吗?很多人将它看作java等面向对象语言的功能不健全语法不规范的小弟,甚至雕虫小技,对它一屑不顾。   当今,越来越多的程序员从事B/S模式的开发,加上Ajax的崛起...

深入浅出JavaScript(1)—ECMAScript

目录: 深入浅出JavaScript(1)—ECMAScript 深入浅出JavaScript(2)—ECMAScript    郑重向大家推荐我的Jquery.ajax系列文章,点击查看 ...

深入浅出JavaScript(1)—ECMAScript .

转载于:http://blog.csdn.net/shan9liang/article/details/7758010   引:   你真的了解JavaScript吗?很多人将它看作java等...
  • zgmzyr
  • zgmzyr
  • 2012年07月21日 12:34
  • 385

JavaScript程序开发(一)—JavaScript和ECMAScript异同

从今天开始,将要开始JavaSCript的学习。以前虽然也接触过JavaScript,概念性的和一些简单的js代码页都在写,不过没有系统的学习过,就是需要什么效果就从网上直接找什么效果,拿到自己的项目...
  • hbysj
  • hbysj
  • 2012年05月20日 21:41
  • 417

JavaScript深入浅出学习笔记(一)—数据类型

一.六种数据类型         五种原始类型:number、string、boolean、null、undefined         一种对象类型:object,它包括Function...
  • zifangz
  • zifangz
  • 2015年05月13日 10:12
  • 173

JavaScript深入浅出————函数和作用域(闭包,作用域)(七)

一、理解闭包

iPhone开发之深入浅出 (2) — ARC之@property使用

博主:易飞扬 原文链接 : http://www.yifeiyang.net/development-of-the-iphone-simply-2/ 上一回我们学到了一些ARC的基本概念,...

iPhone开发之深入浅出 (2) — ARC之@property使用

本文由易飞扬的博客出品,泰然授权转载,如需转载请联系原版权方。 原文链接:http://www.yifeiyang.net/development-of-the-iphone-simply-2/ ...
  • jackljf
  • jackljf
  • 2012年09月13日 16:28
  • 223

《深入浅出 Java Concurrency》—锁机制(九) 读写锁 (ReentrantReadWriteLock) (2)

转自:http://www.blogjava.net/xylz/archive/2010/07/15/326152.html这一节主要是谈谈读写锁的实现。上一节中提到,ReadWriteLock看起来...
  • FG2006
  • FG2006
  • 2011年05月05日 19:18
  • 1658

iPhone开发之深入浅出 (2) — ARC之@property使用

转载: http://article.ityran.com/tutorials 原文链接:http://www.yifeiyang.net/development-of-the-iphone-sim...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深入浅出JavaScript(2)—ECMAScript
举报原因:
原因补充:

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