javascript高级程序语言学习笔记

1、加法操作符(+)的用法

第一种情况,如果两个操作符都是数值,执行常规的加法计算。

第二种情况,如果两个操作数都是字符串,则将第二个操作数与第一个操作数拼接起来。

第三种情况,只有一个操作数是字符串,则将另一个操作数转换为字符串,然后再将两个字符串拼接起来。

如果有一个操作数是对象、数值或布尔值,则调用他们的toString()方法取得相应的字符串值,然后再应用关于字符串的规则,例如

var result =  5 + 5  //  一个数值和一个数值相加

alert(result)   // 10

var result2=  5 + “5”   //  一个数值和一个字符串相加

alert(result2)   //  "55"

这时候,我们也可以通过result=5+pareseInt(“5”)=10

2、减法操作符(-)的用法

第一种情况,如果两个操作符都是数值,执行常规的减法计算(如果操作数中有一个是NaN则结果是NaN)。

第二种情况,如果有一个操作数是字符串、布尔值、null或undefined,则先在后台调用Number()函数将其转换为数值,然后再根据前面的规则执行减法计算。如果转换的结果是NaN,则减法的结果就是NaN;

第三种情况,只有一个操作数是对象,则调用对象的valueOf()方法以取得表示该对象的数值。如果得到的值是NaN,则减法的结果就是NaN:例如

3、for循环语句中,在循环内部定义的变量也可以在外部访问到例如

var count =10;

for(var i=0;i<count;i++){

     alert(i);

}

alert(i);  // 10

4、函数

在函数中,函数里面接收的参数名可以写也可以不写,调用改函数的表达式中,可以传一个参数也可以穿多个或者不传都不会报错,因为函数解析的时候是以数组的形式按顺序解析,

我们可以通过arguments.length来获取传过来的参数的个数,可以用arguments[0]来获取第一个参数等等,arguments是一个类似组数的对象。。。。。

关于参数:没有传递值的命名参数将自动被赋予undefined值

function calNum(num1,num2){

alert(arguments.length);  //弹出1

alert(arguments[0]);  //弹出10===》》 arguments[0] 相当于弹出num1的值

alert(num1);  //弹出10

alert(num2);  //弹出undefined,没有传num2过来,相当于定义了变量num2但是没有给予初始值,所以是undefined

return num1+num2;

}

 calNum(10)

猜你喜欢

转载自www.cnblogs.com/qdlhj/p/9301066.html