主要总结:
一个脚本就是一个语句序列,其中每条语句都会生成某一操作。JavaScript语句包含:声明语句、表达式语句、条件语句、循环语句和中断语句
我们可以将表达式的求值结果存储在变量中,在将来提取它们。变量在使用之前应当声明。如果声明中没有指定初始值,则该变量的初始值为undefined
条件代码通常用
if
语句、switch
语句、?:
运算符和短路运算符编写。但是,程序员也可以使用词典来代替条件代码的一些初级使用。while
语句在循环的顶端有一个检测,它的循环体可能一次都不会执行。do-while
语句的检测在其末端,因此其循环体至少运行一次。JavaScript引擎在遇到它不能执行的语句或者不能求值的表达式时,会抛出异常。程序员可以用
throw
语句显式抛出异常。异常用try-catach
语句捕获。代码块是放在大括号中的语句序列,可以单作单个语句使用。在
if
语句和迭代
语句的主体中使用代码块来表示操作,被认为是一种很好的编程实践。JavaScript将在它认为你遗漏了分号的地方插入分号。程序员需要保护自己:
总是明确使用分号来终结
:声明、Expression、do-while、throw、return、break、continue语句。
章节练习
以下脚本会显示什么?请解释?
s = "Kunjalo";
s.toUpperCase();
alert(s)
全局变量保存了一个字符串"Kunjalo",对字符串调用toUpperCase
方法,但是由于此方法不会改变原字符串,所以调用变量s
显示依旧是"Kunjalo"。
以下表达式表示什么?
Math.random() < 0.75 ? "heads":"Tails"
Math.random
方法生成一个0(包含本身)到1(不包含本身)的随机数,判定生成数是否小于0.75
,是,生成字符串"heads",否,生成字符串"Tails"
到目前为止,检查数字n是不是整数就是对表达式n%1===0求值。还有别的方法吗?
// 检查n是否为整数的两种方法
n % 1 === 0
Math.floor(n) === Math.ceil(n)
这两种方法都可行,第二种方法使用取最小整数和最大整数之间做比较,如果不为整数自然结果为false。
表达式x < y ? x : y
适合做什么?
var a = x < y ? x : y;
// x < y:则 a = x
// x < y:则 a = y
// x === y:则 a = x
作甚我也不知啊
解释以下两个表达式
这里我出现了一个自己想不通的问题,已经提问,待更。
var notice = "she is "+false? "?":"nt"+" here."
修改给汽车喷漆的示例,如果你有一种喜爱的颜色,就将汽车喷为该颜色;如果没有喜爱的颜色,就将汽车喷为车库的颜色(如果知道该颜色的话);否则,将其喷为红色。
var likeColor = prompt("Enter your favorite color");
var garageColor = prompt("Enter your garage color");
var car = new Object();
car.color = likeColor || garageColor || "red";
alert(car.color);
熟练比较运算里的短路运算,掌握其含义
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。