3.1 函数基本概念

3.2.1 操作符

1.一元操作符:前置 后置
var num1 = 2;
var num2 = 20;
var num3 = --num1 + num2; // 等于 21
var num4 = num1 + num2; // 等于 21
前置的num1 和—-num1 值都会减1
var num1 = 2;
var num2 = 20;
var num3 = num1-- + num2; // 等于 22
var num4 = num1 + num2; // 等于 21
后置num1的值减1 ,num1—-值不变。

2.位操作符:
 按位非~
var num1 = 25; // 二进制 00000000000000000000000000011001
var num2 = ~num1; // 二进制 11111111111111111111111111100110
alert(num2); // -26
var num1 = 25;
var num2 = -num1 - 1;
alert(num2); // “-26”
第一种速度更快
 按位与and &
var result = 25 & 3;
alert(result); //1
25 = 0000 0000 0000 0000 0000 0000 0001 1001
3 = 0000 0000 0000 0000 0000 0000 0000 0011

AND = 0000 0000 0000 0000 0000 0000 0000 0001
 按位或or |
var result = 25 | 3;
alert(result); //27
 按位异或 xor
var result = 25 ^ 3;
alert(result); //26
左移操作符,右移操作符;无符号右移
var oldValue = 2; // 等于二进制的 10
var newValue = oldValue << 5; // 等于二进制的 1000000,十进制的 64

3.关系操作符 < > <= >=
 如果两个操作数都是数值,则执行数值比较。
 如果两个操作数都是字符串,则比较两个字符串对应的字符编码值。
 如果一个操作数是数值,则将另一个操作数转换为一个数值,然后执行数值比较。
 如果一个操作数是对象,则调用这个对象的 valueOf()方法,用得到的结果按照前面的规则执
行比较。如果对象没有 valueOf()方法,则调用 toString()方法,并用得到的结果根据前面
的规则执行比较。
 如果一个操作数是布尔值,则先将其转换为数值,然后再执行比较。

4.逗号操作符
var num = (5, 1, 4, 8, 0); // num 的值为 0
在用于赋值时,逗号操作符总会返回表达式中的最后一项。

5.for-in 语句
for-in语句是一种精准的迭代语句,可以用来枚举对象的属性。例如
for (var properName in window) {
console.log(properName);
}
用for-in来显示window对象所有的属性。每次循环都把window对象的属性名赋值给propName.

6.with 语句
with的作用是简化多次编写同一对象的工作。但在严格模式下会出错。
 var qs = location.search.substring(1);
var hostName = location.hostname;
var url = location.href;

 with(location){
var qs = search.substring(1);
var hostName = hostname;
var url = href;
}


7.函数
function function_name () {
return;
}
用在需要提前停止执行函数,而又不需要返回值时,此时返回的是undefined
严格模式对函数有一些限制:
 不能把函数命名为 eval 或 arguments;
 不能把参数命名为 eval 或 arguments;
 不能出现两个命名参数同名的情况。
如果发生以上情况,就会导致语法错误,代码无法执行。

8.理解参数:
JavaScript中的参数与其他语言不同,参数在内部是用一个数组表示的。函数接收到的始终是这个数组,而不关心包含哪些参数,实际上在函数体内部可以通过arguments这个对象来访问这个数组。例如
function say () {
console.log(arguments.length);
}
say(1,2,3);//3,输出传入参数的个数
say(1,2,3,3,3);//5

发布了8 篇原创文章 · 获赞 16 · 访问量 839

猜你喜欢

转载自blog.csdn.net/qq_44758322/article/details/105351560
3.1