JavaScript函数语法 语句和运算符
JavaScript 函数语法
函数就是包裹在花括号中的代码块,前面使用了关键词 function:
{
执行代码
}
在调用函数时,可以向其传递值,这些值被称为参数。可以发送任意多的参数,由逗号 (,) 分隔:
<script>
function myFunction(name,job)
{
alert("Welcome " + name + ", the " + job);
}
</script>
带有返回值的函数
函数将值返回调用它的地方。通过使用 return 语句就可以实现。在使用 return 语句时,函数会停止执行,并返回指定的值。
定义方法:
1、静态方法:function 函数名(参数){函数体 return 函数返回值;}
2、动态匿名方法:var 函数名 =new function {[参数],"函数体”}
3、直接量方法: 函数名 = function {[参数]},{"函数体”}
调用方法:
1、直接调用:函数名(参数)
2、在连接中调用:<a href=" javascrip :t 函数名()">点击</a>
3、在事件中调用:事件名=“函数名()"
4、递归调用:意思就是在函数体内部调用函数自身
function 函数名()
{
代码;
函数名();
}
if…else 语句
•if (条件)
{
当条件为 true 时执行的代码
}
•if (条件)
{
当条件为 true 时执行的代码
}
else
{
当条件不为 true 时执行的代码
}
•if (条件1)
{
当条件 1 为 true 时执行的代码
}
else if (条件2)
{
当条件 2 为 true 时执行的代码
}
else
{
当条件 1 和 条件 2 都不为 true 时执行的代码
}
三目运算(三元运算) 语句: (条件1) ? ture-doing : else-doing; 语句在条件为 true 时执行代码,在条件为 false 时执行其他代码。
5 > 3 ? alert("5大于3") : alert("5小于3");
if...else与三目运算这两者的区别:三目运算有返回值,if else没有返回值
switch 语句
首先设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。使用 break 来阻止代码自动地向下一个 case 运行。
switch(n)
{
case 1: 执行代码块 1
break;
case 2: 执行代码块 2
break;
default: n 与 case 1 和 case 2 不同时执行的代码
}
for 循环
语句 1 (代码块)开始前执行 starts. 语句 2 定义运行循环(代码块)的条件 语句 3 在循环(代码块)已被执行之后执行
可以省略语句 1(比如在循环开始前已经设置了值时)但是必须加上分号;
语句 2 同样是可选的。如果语句 2 返回 true,则循环再次开始,如果返回 false,则循环将结束。如果省略了语句 2,那么必须在循环内提供 break。否则循环就无法停下来。
语句 3 也可以省略(比如当循环内部有相应的代码时):
for (语句 1; 语句 2; 语句 3)
{
被执行的代码块
}
For/In 循环:可以遍历对象的属性,还可以遍历数组
var x;
var x = “”;
var 变量名={fname:"John",lname:"Doe",age:25};
for (x in 变量名)
{
txt=txt + 变量名[x];
}
while 循环
while (条件)
{
需要执行的代码
}
do
{
需要执行的代码
}
while (条件); 至少执行一次
Break 和 Continue 语句
break 语句用于跳出循环。只能用在循环或 switch 中
continue 用于跳过循环中的一个迭代。只能用在循环中
JavaScript 运算符
三种类型的运算符:算术运算符、赋值运算符以及字符串连接运算符。
算数运算符:+ - * / %(取模,余数)自增 自减 a=++i等于 i++; a=i a=i++等于 a=i; i++
赋值运算符:= += -= *= /= eg:x/=y等于x=x/y
用于字符串的+运算符:+ 运算符用于把文本值或字符串变量加起来(连接起来)。想在两个字符串之间增加空格,需要把空格插入一个字符串之中。或者把空格插入表达式中+“ ”+
对字符串和数字进行加法运算:两个数字相加,返回数字相加的和,如果数字与字符串相加,返回字符串,
关系(比较)运算符:比较运算符在逻辑语句中使用,以测定变量或值是否相等。
< <= > >= eg:如果a<b,则返回true,否则返回false
==比较两个运算数的返回值是否相等 !=不相等 === 为绝对相等,即数据类型与返回值都必须相等。 !== 不相等 布尔值:true是1 false是0
逻辑运算符(按优先级顺序):x=6 y=3:!表示not !(x==y) 为 true ||表示or (x==5 || y==5) 为 false &&表示and (x < 10 && y > 1) 为 true
typeof 是类型判断运算符
返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."我们可以使用typeof来获取一个变量是否存在
if( typeof(document.mylist.length) != “undefined” ) { }
对于Array,Null,date等特殊对象使用typeof一律返回object,这是typeof的局限性。
typeof 123;//typeof123返回”number” typeof “123”;//typeof(123)返回”string”