js基础第三天:运算符

  • 时间:2018-07-10 23:27 作者:宁徽说事 来源:宁徽说事 阅读:336
  • 扫一扫,手机访问
摘要:1、运算符1、位运算符1、二进制2、运算符1、&(按位与)将两边的操作数转成二进制,对应数字的每位上的数字,都为1的时候,该位结果才为1,否则结果为0ex:3 & 53 : 0115 : 101--------------- 001 结果 为 1用场合:判断一个数字的奇偶性,n &a

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

双目运算符:运算符需要两个操作数

+,-,*,/,%,&amp;&amp;,||,^,&amp;,|,<<,>> ...

三目运算符:运算符需要三个操作

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、&amp;

9、^

10、|

a|b&amp;c^d

1、先算 b&amp;c 的结果

2、b&amp;c的结果 和 d 进行 异或者操作

3、b&amp;c和d异或者的结果 在和a 做 |

11、&amp;&amp;

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、按值传递

传参时,实际上是将 实参 复制了一份副本传给了函数。

在 函数体内 对变量进行修改,实际上是不会影响到外部的实参变量的。

js基础第三天:运算符

  • 全部评论(0)
最新发布的资讯信息
【系统环境|windows】字节跳动前台面试题解析:盛最多水的容器(2021-03-20 21:27)
【系统环境|windows】DevOps敏捷60问,肯定有你想理解的问题(2021-03-20 21:27)
【系统环境|windows】字节跳动最爱考的前台面试题:JavaScript 基础(2021-03-20 21:27)
【系统环境|windows】JavaScript 的 switch 条件语句(2021-03-20 21:27)
【系统环境|windows】解决 XML 数据应用实践(2021-03-20 21:26)
【系统环境|windows】20个编写现代CSS代码的建议(2021-03-20 21:26)
【系统环境|windows】《vue 3.0探险记》- 运行报错:Error:To install them, you can run: npm install --save core-js/modules/es.arra...(2021-03-20 21:24)
【系统环境|windows】浅谈前台可视化编辑器的实现(2021-03-20 21:24)
【系统环境|windows】产品经理入门迁移学习指南(2021-03-20 21:23)
【系统环境|windows】初识webRTC(2021-03-20 21:23)
血鸟云
手机二维码手机访问领取大礼包
返回顶部