js基础第三天:运算符
1、运算符
1、位运算符
1、二进制
2、运算符
1、&(按位与)
将两边的操作数转成二进制,对应数字的每位上的数字,都为1的时候,该位结果才为1,否则结果为0
ex:
3 & 5
3 : 011
5 : 101
—————
001
结果 为 1
用场合:判断一个数字的奇偶性,n & 1,假如结果为 1,则为奇数,否则为偶数
0 : 0
1 : 1
2 : 10
3 : 11
4 : 100
5 : 101
2、|(按位或者)
将两边的操作数转换成二进制,按位比较,对应位上的两个数字,只需有一个为1,结果就是1,否则就是0
ex
1 | 3
1 : 01
3 : 11
———
11
用场合:针对小数,向下取整时用
n | 0
3、^(按位异或者)
两个数的二进制中,对应位的数字只有一个为1时,该位结果才为1,否则 则为0
ex: 5^3
5:101
3:011
——-
110
用场合:
在不借助任何变量的情况下,交换两个数字
var num1 = 8;
var num2 = 5;
//借助第三方变量
var temp=num1;
num1 = num2;
num2 = temp;
//用异或者运算符
num1 = num1 ^ num2;
num2 = num2 ^ num1;
num1 = num1 ^ num2;
8 : 1000
5 : 0101
num1 = num1 ^ num2;
8 : 1000
5 : 0101
—————
1101 ==> 13
num2 = num2 ^ num1;
8 : 1000
13: 1101
———
0101 ==> 5
num1 = num1 ^ num2;
13 : 1101
5 : 0101
————–
1000
4、<<(按位左移)
将 二进制数 向左移动几位,后边以0补位
0000 0000 0000 0000
0000 0000 0000 0010
ex:2<<1
0000 0000 0000 0000
0000 0000 0000 0100
结果为:4
ex:2<<2
0000 0000 0000 0000
0000 0000 0000 1000
结果为:8
ex:2<<3
结果为:16
5、>>(按位右移)
将 二进制数 向右移动几位,前边以0补位
ex:16>>1
0000 0000 0000 0000
0000 0000 0000 1000
结果 :8
ex:2>>1
0000 0000 0000 0000
0000 0000 0000 0001
2、赋值运算
1、=
var x=y=z=123;
正确,但不推荐
2、扩展的赋值运算符
+=,-=,*=,/=,%=
^=,
var a = 10;
a += 5;==> a = a + 5;
a -= 5;==> a = a – 5;
推荐 n+=m 的方式 取代 n=n+m,由于效率要高
3、条件运算符
1、三目运算符
单目运算符:运算符只要要一个操作数
!,++,–,typeof
双目运算符:运算符需要两个操作数
+,-,*,/,%,&&,||,^,&,|,<> …
三目运算符:运算符需要三个操作
2、语法
运算符:?:
表达式1?表达式2:表达式3;
表达式1是一个条件,值为boolean类型
若表达式1的值为 true,则执行表达式2的操作,并且以表达式2的结果作为整个表达式的结果
若表达式1的值为false,则执行表达式3的操作,并且以表达式3的结果作为整个表达式的结果
3、条件运算符的嵌套
输入一个考试成绩,判断
成绩 == 100 ,则输出 恭喜,得了满分
假如成绩 在85以上,则输出 优秀
假如成绩 在75以上,则输出 良好
否则 :成绩一般
4、优先级
从高 -> 低
1、()
2、单目运算符:++,–,!,typeof
3、*/%
4、+-
5、<>
5+1>>2 : 先算5+1=6,将6右移2位
6、关系运算符:,=
7、关系运算符:==,!=,===,!==
8、&
9、^
10、|
a|b&c^d
1、先算 b&c 的结果
2、b&c的结果 和 d 进行 异或者操作
3、b&c和d异或者的结果 在和a 做 |
11、&&
12、||
13、?:
14、赋值运算符
2、函数
1、什么是函数
函数(function),也能被称之为方法(method),或者者 过程(procedure)
是一段预约义好,并能被反复用的代码块。其中能包含多条可执行语句。
预约义好:事前公告好,但不被执行
反复用:允许被多个地方(元素,函数中)所应使用
代码块:允许包含多条可执行的代码。
函数本质上是功可以完整的 对象
2、函数的公告
语法:
function 函数名(){
//代码块
}
ex :创立一个函数 名称:sayHello,主体功可以为,向控制台上 输出一句 Hello World
3、函数的调使用
执行函数中的内容
任何 JS 的合法位置处,都允许调使用函数
语法:函数名称();
4、定义函数的参数和返回值
转换函数
parseInt(数据);//将指定数据转换为 整数
parseFloat(数据);//将指定的数据转换为 小数
console.log(“要打印的话”);
1、定义带参数函数
function 函数名(参数列表公告){
//代码块(函数体,功可以体,方法体)
}
参数列表:由一或者多个 变量名称来组成
公告函数时定义的参数,能称之为叫作 “形参”(形式参数)
ex:
1、创立一个 函数,要求传递过来一个参数,进行打印
function print(msg){
console.log(msg);
}
调使用带参函数:
语法:函数名称(参数值列表);
print(“Hello World”);
在调使用函数时所传递的参数值,被称之为”实参”(实际参数)
2、创立一个函数,接受两个参数,函数体重,完成 两个参数值相加的运算,并打印输出结果
function add(num1,num2){
console.log(num1+num2);
}
调使用
add(15,18);
2、带返回值的函数
var r = parseInt(“35.5”);
1、公告
function 函数名(0或者多个参数){
//代码块;
return 值;
}
2、调使用
var 变量 = 函数名(参数);
3、ex
编写一个函数,名称为 calResult,接收2个数字作为参数,并且在函数中计算两个数字的和,并返回。
5、变量的作使用域
1、什么是作使用域
作使用域就是变量或者函数的可访问范围。它控制着变量或者函数的可见性和生命周期。
在JS中,变量或者函数的作使用域可分为:
1、函数作使用域,只在当前函数内可访问
2、全局作使用域,一经定义,代码的任何位置都能方式
2、函数作使用域
函数作使用域中的变量,能称之为 “局部变量”,只可以在当前函数中可访问,离开该范围,则失效
3、全局作使用域
全局作使用域中的变量,称之为 “全局变量”,在代码的任何位置处都可以访问
公告位置或者方式:
1、独立于任何function的位置处公告 变量
2、公告变量时不用var关键字
4、公告提前
JS在正式执行之前,会将所有var公告的变量和function公告的函数,预读到所在作使用域的顶部
但是,对变量的赋值,还保留在原来的位置处
5、按值传递
传参时,实际上是将 实参 复制了一份副本传给了函数。
在 函数体内 对变量进行修改,实际上是不会影响到外部的实参变量的。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » js基础第三天:运算符