学习笔记--JavaScript--Day02

JS基础知识

1.运算符

1.赋值运算符 =
2.算术运算符 
	+ - * / % (加减乘除、取余)
	++ -- 自增自减运算符
	注意:
		1.自增或自减运算符在单独与变量结合时,放前面与放后面没区别
			a++ ++a 
		2.如果自增或自减运算符与其他运算符结合使用,要区分前缀和后缀
			-先找变量,从变量位置从右向左结合运算符
			-如果做前缀,先++/--,再进行赋值或其他运算;
			-如果做后缀,就先结合其他运算符,再进行++/--;
			如:
				num = 5;
				var res = num++;
				结果: res = 5   num = 6
				var res = ++num;
				结果: res = 6   num = 6
3.关系运算符(比较运算符)
	> 	大于
	>=	大于等于	
	< 	小于
	<= 	小于等于
	== 	等于
	!= 	不等于
	=== 恒等
	!== 不恒等
	     
	注意:关系运算符的运算结果为boolean类型
	1.数字与数字之间的比较
	2.数字与字符串进行比较
		首先会自动将字符串转换为数字再进行比较,如果转换成功,
		按照数字之间的比较进行运算,如果转换失败,
		将变成数字与NaN之间的比较,结果永远为False
	3.字符串之间的比较
		进行每位字符Unicode码的比较,当前位如果相同,
		就后移至下一位再进行比较,当前位如果不同,直接出结果。
		et:
			"10" > "5"; //false
	4. ==    ===    !=    !==
		相等:
			用于判断两个值是否相等,在比较时,会自动转换数据类型,
			只要值相等,结果就为True
		恒等:
			用于判断两个变量的数据类型和值是否完全相等,
			不会进行数据类型转换,只有当操作数的数据类型保持一致,
			值相等,才为True.
		不等:
			在两端值不相等的情况下,返回True。
		不恒等:
			两个操作数中,数据类型与值只要有一个不相等,就返回True,
			否则返回False。
5.逻辑运算符
	进行多项比较,并将结果组合为单一的布尔值。
	&&: 逻辑与 (一假即假)
		-等同于 Python and
		-左右为表达式,只有两个表达式的结果都为真,逻辑与的结果才为真。
	||: 逻辑或 (一真即真)
		-等同于 Python or
		-只要有一个条件为真,结果就为真
	! : 逻辑非 (非真即假,非假即真)
		-等同于Python not
		-对现有条件的结果进行取反操作
6.位运算符
	程序中所有的数据在计算机中都是以二进制存储的,
	位运算,就是对二进制位进行操作。
	1.按位与: &
		将整数转换为二进制形式,每一位都进行与操作
	注意:
		任何数字与1进行位与操作,结果为1时,表示操作数为奇数;
		结果为0,操作数为偶数;可以用来判断数字奇偶。
	2.按位或: |
	3.按位异或: ^
		两个数字的二进制进行比较,相同为0,不同为1;
	注意:
		异或操作可以在不借助第三方变量的情况下,变换两个变量的值(交换)
		et:
			var a = 3, b = 5;
			a = a ^ b;
			b = a ^ b;
			a = a ^ b;
7.三目运算符
	-有三个操作数
	语法:
		条件表达式 ? 表达式1 : 表达式2;
		-先判断条件表达式的结果,为真则执行表达式1;为假,则执行表达式2

2.流程控制语句

1.顺序结构:
	按照代码书写顺序,从上到下执行
2.分支结构(选择结构)
	作用:
		根据条件选择某一段代码执行
	1. if语法
		if(条件){
			执行语句
		}
		注意:
		1. if()后面的{}可以省略,省略之后,只控制该结构下的第一条语句。
		2. 条件尽可能是布尔类型的
		3. 任何非0值都为真,0为假,以下条件都为假
				if(0) {}
				if(0.0) {}
				if(NaN) {}
				if("") {}
				if(undefined) {}
				if(null) {}
	2. if - else结构
		if(条件){
			执行语句 //条件为真时执行的操作
		}
		else{
			执行语句 //条件为假时执行的操作
		}
	3. 多重分支
		if(条件1){
			执行语句 //条件1为真时执行的操作
		}
		else if(条件2){
			执行语句 //条件2为真时执行的操作
		}
		else if(条件3){
			执行语句 //条件3为真时执行的操作
		}
		...
		else{
			执行语句 //以上条件都不成立时,执行的操作。
		}
	4. switch语句
		在进行值的判断时用的比较多
		语法:
			switch(变量){
				case 值1:
					执行语句
					break; //跳出switch语句,不再向后进行匹配.
				case 值2:
					执行语句
				case 值3:
					执行语句
				default:
					代码块 //所有case都匹配失败时执行
			}
		注意:
			1.变量与case值的匹配是用恒等来判断的--数据类型和值都相等
			2.break表示跳出switch语句,后面的判断语句不执行。
			3.default关键字用于在表达式不匹配前面给出的任何一种情形
			  时,最终执行的操作。
3.循环结构
	重复执行某一段代码
	三要素
		循环变量
		循环条件
		循环体
	1.while循环
		while(循环条件){
			循环体
		}
	2.do-while循环
		do{
			循环体
		}while(循环条件);
	3.while与do-while的区别
		while循环先判断循环条件,为真才执行循环体;
		do-while循环不管条件是否成立,先执行循环体,后判断循环条件。
		即使循环条件不成立,也执行一次循环体。
	4.for循环
		for(1.定义循环变量; 2.判断循环条件 3.更新循环变量){
			循环体
		}
	5.for循环与while循环的区别
		1.相同点:执行流程相同
		2.不同点:
			while循环常用于不确定循环次数的场合。
			for循环常用于确定循环次数的场合。
	6.循环控制
		break:
			用在循环体中,表示跳出循环,结束整个循环。
		continue:
			用在循环体中,表示跳出本次循环,开始下一次循环。
	7.循环嵌套
		-允许在一个循环中,嵌套另一个循环

3.函数

1.作用:
	实现多条语句的封装
	实现代码复用
2.函数的使用
	1.先声明后使用(js中不强制)
3.语法:
	函数声明 关键字 function
	function 函数名(参数列表){
		函数体
		返回值
	}
4.注意:
	1.JS中函数声明使用function关键字
	2.函数名自定义,遵照变量名命名规范,见名知意
	3.参数列表:参数表示函数体执行所需要的数据,可以为空。
	  为空时()不能省略,参数之间使用,隔开
	4.返回值,使用return关键字,将函数体内部执行的结果传递给外界使用,
	  只能返回一个值,返回值不需要的话,可以省略;
	注意:
	    return一定要写在函数体的末尾,return关键字后面的代码都不执行。
5.匿名函数
	var fn = function(){
		函数体
	};
6.函数调用
	函数名();
	函数名(参数列表);
	var res = 函数名(参数列表);
	注意:
		1.函数参数分为形参和实参,函数声明时,使用形参;
		  函数调用时,传递实参。
		2.函数如果有返回值,在调用时,需要定义变量接收返回值。
	元素绑定
		<button onclick="函数名();">点击</button>
8.变量的作用域
	变量的作用域指的是变量起作用的范围
	2.分类
		1.全局作用域
			处在全局作用域中的变量就是全局变量
				1.在function之外通过var声明的变量都是全局变量,
				  在任何地方都可以省略
				2.声明变量时,省略var关键字的,一律是全局变量,
				  推荐使用var关键字,不要省略
		2.局部作用域
			-局部作用域中的变量就叫局部变量
			-JS中局部作用域指的是函数作用域
				1.在函数内部使用var关键字声明的变量都是局部变量,
				  只在当前函数作用域中可以访问,外界无法访问
				2.局部变量出了函数就不能访问了
		注意:
			在函数中访问变量:
				如果当前函数中没有该变量,就访问全局作用域中的变量;
				如果当前函数中定义了该变量,全局中也有相同的变量名,
				函数就近访问变量,即访问当前函数中的变量。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值