javascript核心读书有感之语句

上传人:bin****86 文档编号:59370519 上传时间:2018-11-06 格式:DOCX 页数:48 大小:39.21KB
返回 下载 相关 举报
javascript核心读书有感之语句_第1页
第1页 / 共48页
javascript核心读书有感之语句_第2页
第2页 / 共48页
javascript核心读书有感之语句_第3页
第3页 / 共48页
javascript核心读书有感之语句_第4页
第4页 / 共48页
javascript核心读书有感之语句_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《javascript核心读书有感之语句》由会员分享,可在线阅读,更多相关《javascript核心读书有感之语句(48页珍藏版)》请在金锄头文库上搜索。

1、我真正系统地接触和学习党的基本知识是在这次中级党校的培训班上。通过学习,了解了党的发展历程,对党的性质、宗旨、任务等基本知识有了进一步的了解Javascript核心读书有感之语句这篇文章主要介绍了Javascript核心读书有感之语句,需要的朋友可以参考下在javascript中,表达式是短语,那么语句(statement)就是整句或命令。正如英文语句以句号结尾,javascript以分号结尾。表达式计算出一个值,但语句使某件事发生。“使某件事发生”的一个方法是计算带有副作用的表达式。诸如赋值和函数调用这些有副作用的表达式,是可以作为单独的语句的。这种把表达式当做语句的用法也称做表达式语句(e

2、xpression statement)。类似的语句还有声明语句(declaration statement),声明语句用来声明新变量或者定义新函数。javascript程序就是一系列的可执行语句的集合,默认情况下,javascript解释器依照编写顺序依次执行。另一种“使某件事情”发生的方法就是改变语句的默认执行顺序:1.条件语句(conditional)语句:javascript解释器可以根据一个表达式的值来判断;来执行还是跳过这些语句,例如if和switch语句。2.循环语句(loop)语句:可以重复执行的语句,例如while和for语句3.跳转(jump)语句:可以让解释器跳转至程序的

3、其它部分继续执行、例如break、return和throw语句接下来本文将介绍javascript中各式各样的语句和其语法。本章最后对这些语句做了总结。一个javascript程序无非是以分隔分割的语句集合,所以一旦掌握了javascript语句,就可以编写javascript程序了。1.表达式语句赋值语句是一种比较重要的表达式语句,它的作用就是改变一个变量的值,就像执行一条赋值语句一样:例如代码如下:greet = hello + name;i *= 3;递增运算符(+)和递减运算符(-)和赋值语句有关。它们的作用是改变一个变量的值,就像执行一条赋值语句一样。代码如下:counter+;de

4、lete运算符的重要作用就是删除一个对象的属性(或数组的元素),所有它一般作为语句使用,而不是作为复杂表达式的一部分。代码如下:delete o.x;函数调用是表达式语句的另外一个大类,例如代码如下:alert(greet);window.close();虽然这些客户端函数都是表达式,但它们对web浏览器造成了一定的影响。所以我们认为也是语句,调用一个没有副作用的函数是没有意义的,除非它是复杂的表达式或赋值语句的一部分,例如。不可能随便把一个余弦值丢弃;Math.cos(x);相反,得出余弦值就得把它赋值给一个变量,以便将来使用这个值:var cx = Math.cos(x);再次提醒各位,每

5、行代码就是以分号结束的。2.复合语句和空语句可以用逗号运算符将几个表达式连接在一起,形成一个表达式。同样,javascript还可以讲多条语句联合在一起,形成一个复合语句(compound statement)。只需花括号将多条语句括起来即可。因此,下面几行代码可以当成一条单独的语句,使用在javascript任何希望使用一条语句的地方。代码如下:x = Math.PI;cx = Math.cos(x);console.log(cos()= + cx);关于语句块有几点需要注意:第一,语句块不需要分号。块中的元素语句必须以分号结尾,但语句块不需要。第二,语句块中的行都有缩进,这不是必须的,但整

6、齐的缩进能使代码可读性更强,更容易理解。第三,javascript没有块级作用域,在语句块中声明的变量并不是语句块所私有的。(参考3章10节第一小节)将很多条语句合并成一个大语句块的做法在javascript编程中非常常见。类似的表达式通常包含子表达式一样,很多javascript包含其它子语句,从形式来讲,javascript通常允许一个语句块包含一条子语句。例如:while循环的循环体就可以只包含一条语句。使用语句块,可以将任意数量的语句放到这个块中,这个语句块可以当做一条语句来使用。在javascript中,当希望多条语句被当做一条语句使用时,使用符合语句来替代。空语句(empty st

7、atement)则恰好相反,它允许包含0条语句。空语句如下所示:;/分号javascript解释器在执行空语句时显然不执行任何动作,但实践证明:当创建一个具有空循环体的循环时,空语句有时是很有用的,例如下面的for循环代码如下:/初始化一个数组afor (i = 0; i 在这个循环中,所有的操作都在表达式ai+=0中完成,这里并不需要任何循环体。然而javascript需要循环体中至少包含一条语句,因此这里只使用了一个单独的分号来表示一条空语句。注意,在for循环、while循环或if语句的右边园括号的分号很不起眼,这很可能造成 一些致命的bug,而这些bug很难定位到。例如下面的代码的执行

8、结果很可能就是作者不想要的效果:代码如下:if(a=0)|(b=0); /这一行代码什么也没做.o = null; /这一行代码总会执行如果有特殊目的使用空语句,最好在代码中添加注释,这样能更清楚的说明这条空语句是有用的代码如下:for (i = 0; i 3.声明语句var和function都是声明语句,它们声明或定义变量或函数。这些语句定义标识符(变量名和函数名)并给其赋值,这些标识符可以在程序任意地方使用。声明语句本身什么也不做,但它有一个重要意义:通过创建变量和函数,可以更好的组织代码的语义。接下几节将讲述var语句和function语句,但并不包含变量和函数的全部内容。i.varva

9、r语句用来声明一个或者多个变量,它的语法如下:var name_1 = value_1, ., name_n = value_n关键字var之后跟随的是要声明的变量列表,列表中的每一个变量都可以带有初始化表达式,可用于指定它的初始值。例如:代码如下:var i; /一个简单的变量var j = 0; /一个带有初始值的变量var p, q; /两个变量var greet = hello + name; /更复杂的初始化表达式var x = 2.34,y = Math.cos(0.75),r, theta; /很多变量var x = 2,y = x * x; /第二个变量使用了第一个变量var

10、x = 2,f = function(x) return x * x, /每个变量都独占一行y = f(x)如果var语句出现在函数体内,那么定义的是一个局部变量,其作用域就是这个函数。如果在顶层代码中使用var语句,那么它声明的是全局变量,在整个javascript中,都是可见的。在第三章10节提到:全局变量是全局对象的属性,然后和其它全局对象属性不同的是,var声明的变量是无法通过delete删除的。如果var语句中的变量没有指定初始化表达式,那么这个变量的值初始为undefined。所以,在声明语句之前的变量值就是undefined。需要注意的是,var语句同样可以作为for循环或者fo

11、r/in循环的组成部分。(在循环之前声明的变量声明一样,这里声明变量也会提前),例如:代码如下:for (var i = 0; i for (var i = 0, j = 10; i for (var i in o)console.log(i);注意,多次声明同一变量是无所谓的。ii.function关键字function用来声明函数的,我们已经学过函数表达式(4.3).函数定义可以写成语句的形式。例如:下面示例代码中的两种定义写法:代码如下:var f = function f(x) return x + 1; /将表达式赋值给一个变量function f(x)return x + 1; /

12、含有变量名的语句函数声明的语法如下:代码如下:function funcname(arg1, arg2., argn) statementsfuncname是要声明的函数的名称标识符。函数名之后是参数列表,参数之间使用逗号隔开。当调用函数的时候,这些标识符则指代传入函数的实参。函数体是由javascript语句组成的,语句数量不限,且用花括号括起来。在定义函数时,并不执行函数体内的语句,它和调用函数时待执行的新函数对象相关联。注意,function函数语句里的花括号是必须的,这和while循环和其它一些语句锁使用的语句块是不同的,即使函数体只有一条语句,仍然需要花括号将其括起来。代码如下:fu

13、nction hyteus(x, y) return Math.sqrt(x * x + y * y);hyteus(1, 2) /=2.979function facial(n) /一个递归函数if (n return n * facial(n - 1);facial(11) /=函数的声明通常出现在javascript代码的最顶部,也可以嵌套在其他函数体内。但在嵌套时,函数声明只能出现在所嵌套的函数顶部。也就是说:函数定义不能出现在if、while、或其他语句中。和var语句一样,函数声明语句创建的变量也是不可删除的。但是这些变量不是只读的,变量值可以重写。4.条件语句条件语句是通过判断指

14、定的表达式的值是否来执行或跳过某些语句。这些语句是代码的”决策点“,有时称为”分支“。如果javascript解释器是按照代码的”路径“执行的。条件语句就是这条路上的分叉点。程序到达这里必须选择一条路径来继续执行。i.if语句if语句是基本的控制语句,准确的说,它让程序有条件的执行,这种语句有两种形式:第一种是代码如下:if (expression)statement这种形式中,判断expression 的值,如果是真,执行statement语句,如果是假值,就不执行statement.例如代码如下:if (username = null) /如果username是null或undefinedusername = jack wong; /对其进行定义需要注意的是,if语句括住expression的园括号是必须的。javascript语法规定,if关键字和带园括号的表达式之后必须跟随一条语句。但可以使用语句块将多条语句合成一条。因此,if语句的形式如下所示:代码如下:if (!address) address = ;message = please mailing addressif语句的第二种形式引入了else从句,当expression的值是fal

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号