javascript程序就是一系列可执行语句的集合。(ps我看了全位置呢比js高级讲解的更加系统和详细,所以今天就结合两本书内容。)
表达式语句
1)赋值语句
i = 3;
2)delete作为语句使用(作用:删除一个对象的属性)
delete o.x;
3.)函数调用语句
alert(greeting);
window.close();
复合语句和空语句
复合语句
javascript可以将多个语句联合一起,形成一个复合语句,只需要用花括号括起来即可。
{
x = Math.PI;
cx = Math.cos(x);
console.log(cos“”(㏒10)="+cx);
}
注意:❶语句块的结尾不需要分号,但是块中语句必须以分号结束。
❷块中缩进不是必要,但整齐的缩进让代码可读性高,容易理解。
空语句
它语句包括0条语句。
例如
;
for(i = 0; i < a.length; a[i++] = 0)// empty
声明语句
声明语句本身什么也不做,但它有一个重要的意义,通过创建变量和函数,可以更好的组织代码的语句。
例如,var和function,他们声明或者定义变量或函数。
var 用来声明一个或者多个变量
var i; //一个简单的变量
var j = 0; //一个带有初始值的变量
var p,g; //两个变量
var greeting = “hello”+ name; //复杂的初始化变量
var x = 4,y = Math.cos(0.75),r,theta //多个变量
var w=2, z = w+w; // 第二个变量使用了第一个变量
var c = 8, //更多变量
f = funciton(c){return c*c},
y = f(c);
var语句同样可以作为for循环或者for/in循环的一部分
for(var i = 0; i < 10; i ++)
for(var i in o)
注意:如果函数定义的在函数体内,那么它定义就是一个局部变量,其作用域就是这个函数。
function
关键字function用来定义函数,函数名之后的圆括号中是参数,参数直接用逗号分隔,花括号的必须的。
var f = function(x){ return x + 1;}
ps:函数这部分会在函数部分重点详细说明。
条件语句
条件语句是通过判断制定表达式的值来决定执行还是跳过某些语句。
if 有条件的执行语句
if 语句中圆括号是必须的
if(条件)
{
语句
}
或者
if(条件) //如果真
{
语句
}
else // 否则
{
}
多个if 我们这么写。
if(条件){
执行代码
}
else if (条件2){
执行代码2
}
else if(条件3){
执行代码3
}
else{
之前代码都为false 执行代码4
}
switch
if语句在程序执行中创建一个分支,并且可以使用else if 来处理多条分支,当所有分支都依赖同一个表达式时,else并非最佳解决方案,而是switch。
switch(条件){
情况
}
例子
switch(n){
case1:
alert(星期一);
break;
case2:
alert(星期二);
break;
case3:
alert(星期三);
break;
……
default:
alert(周末)
break;
}
解释:如果switch条件与case都不匹配则执行default;如果没有这个语句块,则跳出switch。
注意:if else if else 用于判断连线的一段;而switch则可以用于具体的某一个点。
循环
while
格式:while(条件){
语句
}
先判断再执行;所以花括号内的循环体可能一次都不执行。
do/while
格式:
do{
}while(条件)
先执行再判断;所以代码循环体至少被执行一次。
for
格式:
for(初始化操作;循环判断条件;计算器变量的更新){
循环体
}
例子:
var count = 10
for (var i = 0; i < count; i++){
alert(i);
}
// 虽然三个量可以省去,但是两个分号却千万不能省去
for(;;){
aler(这是一个死循环)
}
for/in
格式:
for( 变量 in 表达式){
条件
}
for/in通常用于便利对象的属性
跳转
标签语句
通过给语句定义标签,就可以在程序的任何地方通过标签引用语句。
break和continue是javascript中唯一可以使用语句标签的语句。
标签:语句。
这里的标签必须是合法的javascript标识符,而不能是保留字。
break语句
单独使用break语句的作用是立即退出最内层的循环或switch语句,外面的循环和switch后面的语句继续执行。
例子
for(var i=0;i < a.length;i++){
if(a[i]==target) break;
}
当整个数组遍历完后会正常退出循环,如果找到了需要找的数组元素,则使用break语句退出循环。
当break和标签一块使用的时候,程序将跳转到这个标签所标识的语句块结束,或者直接终止这个闭合语句块的执行。break和标签直接不能换行。
continue语句
continue语句是转而执行下一次循环,continue语句也是退出当前循环,但退出后会从循环的顶部继续循环。
return语句
return语句只能在函数体内出现,函数中的return语句是指定函数调用后的返回值。return语句经常作为函数内的最后一条语句出现。
throw语句
在javascript中,当产生运行时错误或者程序使用throw语句是就会显示的抛出异常。
try/catch/fianlly语句
try/catch/fianlly是javascript异常处理机制。
try{
// 通常来讲,这里的代码会从头执行到尾而不产生任何问题,
//但有时候回抛出一个异常,要么是由throw语句直接抛出异常
//要么是通过调用一个方法简介抛出异常
}
catch(e){
//当且仅当try语句块抛出了异常,才会执行这里的代码
//这里可以通过局部变量e来获得对Error对象或者抛出的其他值的引用
//这里的代码块可以基于某种原因处理这里的异常,也客户要忽略这个异常
//还可以通过throw语句重新抛出异常
}
finally{
// 不管try语句块是否抛出了异常,这里的逻辑总是会执行,终止try语句块的方式有:
//①正常终止,执行完语句块的最后一条语句
//②通过break,continue或者returen语句终止
//③抛出一个异常,异常被catch从句捕获
//抛出一个异常,异常未被捕获,继续向上传播
}
例子
try{
//要求用户输入一个数字
var n = Number(prompt(“请输入一个正整数”,“ ”));
//假设输入是合法的,计算这个数的阶乘
var f = factorial(n);
//现实结果
alert(n + “!=” + f);
}
catc(ex){
//如果输入不合法,将执行这里的逻辑
alert(ex);//告诉用户发生了什么错误
}
其他类型语句
with语句
with语句用来临时扩展作用域链 (不建议使用)
类似这种访问HTML表单的元素:
document.forms[0].address.value
with(document.forms[0]){
//直接访问表单元素,例如
name.value = "";
address.value = "";
email.value = "" ;
}
debugger语句
用来断点调试代码
use strict 语句
ps:这个语句我并没有读懂,所以就不乱写了。
小结
囧 小结用图片表示更好,可是我没找到,所以只能假装有图假装有图片假装有图……