IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 基础知识 | js基础 -> 正文阅读

[JavaScript知识库]基础知识 | js基础

运算符

运算符

运算符operator也被称为操作符,用于实现赋值、比较和执行算术运算等功能的符号

js中常见的运算符有算术运算符、递增和递减运算符、比较运算符、逻辑运算符、赋值运算符?

?算术运算符

算术运算符使用的符号,用于执行两个变量或值的算术运算

运算符之间要留有空格? console.log(1 + 1);

浮点数(就是小数)在进行算术符进行计算时,它的精确度不如整数

运算符描述实例用途
+10+20=30
-10-20=-10
*10*20=200
/10/20=0.5
%取余数(取模)返回触发的余数9%2=1余数为0说明数能被整除

?案列:算术运算符

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		//----- /除法
		console.log(2 / 2);//1
		//-----%取余
		console.log(5 % 3);//余为2
		
		// 浮点数问题
		console.log(0.1 + 0.2);//0.30000000000000004
		console.log(0.07 * 100);//7.000000000000001
		</script>
	</body>
</html>

表达式与返回值?

?表达式是由数字、运算符、变量等能求得数值的有意义排列方法所得的组合

?表达式最终都会有一个结果,返回给我们,称这个结果为返回值

?案列:表达式与返回值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		//2+2为表达式,4为返回值
		console.log(2 + 2);//4
		</script>
	</body>
</html>

?前增/后增 递增/递减运算符?

如果需要反复给数字变量添加或减去1,可以使用递增(++)和递减(--)运算符

?放在变量前的++/--称为 前置递增/减运算符,放在变量后的++/--称为 后置递增/减运算符

?前置、后置自增单独使用,效果是一样的,但是在表达式上使用符号的前后位置会对结果有影响

案例:递增/递减运算符?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		// 自增加1方式一
		var num=1;
		num=num+1;
		console.log(num);//2
		
		//递增方式用在变量上没有差别
		var age=2;
		age++;
		console.log(age);//3
		
		var num=2;
		++num;
		console.log(num);//3
		
		//递增方式在表达式上符号的前后会对结果有影响
		var bed=10;
		console.log(bed++ +10);//20
		
		var tub=10;
		console.log(++tub +10);//21
		
		</script>
	</body>
</html>

比较运算符

比较运算符也叫关系运算符,就是两个数据进行比较时所使用的运算符,比较运算后,会返回一个布尔值(true/false)作为比较运算的结果

运算符名称说明案列结果
<小于3<5true
>大于3>5false
>=大于或等于2>=2true
<=小于或等于4<=3false
==判断值是否相等,会自动转换值类型37=='37'true
!=不等于37!=37false
===全等于,值和数据类型都要一样37===37true
!==不全等于37!==37false

?案列:比较运算符

?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		console.log(5 > 3);//true
		
		//>= <=满足一个条件即可
		console.log(2 >= 2);//true
		
		//==自动转换值类型(隐式转换),值相等就可以
		console.log(37 =='37');//true
		console.log(37 == 37);//true
		
		//!=
		console.log(18 != 18);//false
		
		// ===必须值和数据类型一致
		console.log(18 === 18);//true
		console.log(18 === "18");//false
		
		//!==
		console.log(18 !== 18);//false
		console.log(18 !== "18");//true
		</script>
	</body>
</html>

逻辑运算符

逻辑运算符是用于进行布尔值运算的运算符,返回值也是布尔值,经常用于多个条件的判断

?逻辑与 &&? ? ?两个结果都为true,结果才是true,只要有一个false,结果就是false

?逻辑或 ||? ? ? ? ?两个结果为false,结果才是false,只要有一个为true,结果就是true

?逻辑非 !? ? ? 值取反

逻辑运算符说明案例
&&逻辑与? ?andtrue && false
||逻辑或? ?ortrue | | false
逻辑非? ?not! true

?案例1:逻辑运算符

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		//逻辑与 && 两个结果都为true,结果才是true,只要有一个false,结果就是false
		console.log(3 > 5 && 3 > 2);//false
		console.log(3 < 5 && 3 > 2);//true
		
		//逻辑或 || 两个结果为false,结果才是false,只要有一个为true,结果就是true
		console.log(3 > 5 || 3 > 2 );//true
		console.log(3 > 5 || 3 < 2);//false
		
		//逻辑非 !
		console.log(!true);//false
		</script>
	</body>
</html>

?案例2:逻辑运算符

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		var num = 7;
		var str = "我爱你~中国~";
		//str.length为7
		console.log(num > 5 && str.length >= num);//true
		console.log(num < 5 && str.length >= num);//false
		console.log(!(num<10));//false
		console.log(!(num<10 || str.length == num));//false
		</script>
	</body>
</html>

?逻辑中断 ||? /??&&

逻辑中断也叫短路运算,当值或者表达式参与逻辑运算时就是短路运算

当有多个表达式/值时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值

逻辑与 &&? ? ?

表达式1 && 表达式2

如果第一个表达式的值为真,就返回表达式2,如果第一个表达式的值为假,就返回表达式1

?逻辑或? ||? ? ?

表达式1 ||?表达式2

如果第一个表达式的值为真,就返回表达式1,如果第一个表达式的值为假,就返回表达式2

?案例1:逻辑中断

?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		//短路运算 
		
		//逻辑与 && 表达式1为真,返回表达式2,1为假,返回1
		//数字里只有0是假的,其他都是真的
		// 如果有空的或者否定的为假,其余为真
		//假的有 0 空字符串'' null undefined NaN
		console.log(123 && 456);//456
		console.log(123 && 456 && 789);//789
		console.log(0 && 123);//0
		
		//逻辑或 || 表达式1为真,返回表达式1,表达式1为假,返回表达式2
		console.log(123 || 456);//123
		console.log(123 || 456 || 678);//123
		console.log('' || 345 || 678);//345
		</script>
	</body>
</html>

?案例2:num值

?

?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		var num=0;
		console.log(123 || num++);//123
		console.log(num);//0
		</script>
	</body>
</html>

赋值运算符

用来把数据赋值给变量的运算符

赋值运算符说明案例
=直接赋值var name="我是小可爱"
+=、-=加减一个数后,在赋值

var age=10;

age+=5;

*=、/=、%=乘除取模后,在赋值

var age=2;

age*=5;

?

?

?案例:赋值运算符

?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		// 方法一
		var num=0;
		num=num+5;
		console.log(num);
		
		//方法二
		var age=10;
		age+=5;
		console.log(age);
		</script>
	</body>
</html>

运算符优先级

优先级运算符顺序
1小括号()
2一元运算符++? --? !
3算术运算符先* / % 后+ -
4关系运算符> >= < <=
5相等运算符== !=? ===? !==
6逻辑运算符先&& 后 ||
7赋值运算符=
8逗号运算符

?案例:运算符优先级

?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		// 一元运算符
		//++num  !num
		
		//二元运算符,二元表达式
		//2+3
		
		console.log(4 >= 6 || '人' != '阿凡达' && !(12 * 2 == 144) && true);//true
		
		var num=10;
		console.log(5 == num / 2 && (2 + 2 * num).toString() ==='22');//true
		
		var a = 3 > 5 && 2 < 7 && 3 == 4;
		console.log(a);//false
		
		var b = 3 <=4 || 3 > 1 || 3 != 2;
		console.log(b);//true
		
		var c = 2 === "2";
		console.log(c);//false
		
		var d = !c || b && a;
		console.log(d);//true
		</script>
	</body>
</html>

三元表达式

三元表达式也能做一些简单的条件选择,有三元运算符组成的式子称为三元表达式

条件表达式 ? 表达式1 : 表达式2

如果条件表达式结果为真,返回表达式1,如果条件表达式结果为假,返回表达式2

案列:三元表达式

?

?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<script>
		// 表达式是有结果的
		var num=10;
		var result = num > 5 ? '是的' : '不是的';
		console.log(result);
		
		// 用户输入数字,如果数字小于10,就在前面补0,比如01,09,如果数字大于10,就不需要补,比如20
		var time=prompt("请你输入0-59之间的一个数字");
		var result2 = time < 10 ? '0'+ time : time;
		alert(result2);
		</script>
	</body>
</html>

推荐看

JavaScript基础语法-dom-bom-js-es6新语法-jQuery-数据可视化echarts黑马pink老师前端入门基础视频教程(500多集)持续_哔哩哔哩_bilibili

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-06-25 18:01:20  更:2022-06-25 18:04:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年9日历 -2024/9/27 19:18:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码