Javascript入门(二)

Javascript入门(二),第1张

运算符

用于实现赋值、比较、算数的符号

算数运算符

执行两个变量运算的符号
±*/%
浮点数运算因进制转换会导致误差

表达式和返回值

有数字运算符变量组成的式子
都有结果即返回值

递增递减运算符

与C语言一致

var num = 1;
num = num + 1;
num ++;
比较运算符

与C语言一致

< > == <= >= != ===全等(数值类型都相等

逻辑运算符

对布尔值进行运算(与C语言一致)
&&与
|| 或
!非

逻辑中断,左边可以确定结果,不继续后面的运算(与python一致)

123 && 456//返回456
0 && 123//返回0
123 || 456//123
0 || 123 || 456//123
var num = 0
123||num++;//最后num不运算,num=0
赋值运算符

= += -= 与C语言一致

流程控制

控制代码使用什么结构顺序执行

顺序结构

先后顺序一次执行

分支流程控制

由上到下执行时,根据不同的条件,执行不同的路径代码,从而得到不同的结果。

if语句

if(条件表达式){执行语句}
else if(条件表达式){执行语句}
else{执行语句}

三元表达式

3 > 5 ? '对‘ : ’错‘
案例:数字补零

var str = prompt('input(0-59:');
str >= 10 ? alert(str) : alert('0'+ str);
switch语句
switch(表达式){
	case value1:执行语句1;break;
	case value2:执行语句2;break;
	.....
	default:执行语句;break;
}

*区别
分支少用ifelse
分支多用switch

循环结构

与C语言一致

for(var i = 0;i < 100;i++){
   console.log('00');
  }

断点调试:
F12=》Sourse=》打断点=》F11下一步执行
案例:输出五个*同一行

var str = ''
for(var i = 1;i <= 5;i++){
	str += '&';
}
console.log(str);

while(条件判断){run}
do{run}while(条件判断)
dowhile至少执行一次

continue break 略 数组
var arr = [1,2,3,4];
var arr = []; //创建空数组
var arr = new Array ();//创建空数组
数组元素访问
console.log(arr[0]);
for(var i = 0;i < arr.length;i++){
	console.log(arr[i]);
}

如果length增大,新增元素默认undefined。
不直接给数组名赋值,原值会丢失。

函数

函数就是封装了一段可以被重复执行调用的代码块,方便大量代码重复使用。

//函数的声明
function getSum(n1,n2){
	var sum = 0;
	for(var i = n1; i <= n2;i++){
		sum += i;
	}
	console.log(sum);
	return sum;
}
//函数的调用
getSum(1,100);
arguements

存储以伪数组的形式所有实参,有length属性。当形参无法表明实参,只有函数才有。

//声明方法1
function test(){
 	console.log(arguments);
 	console.log(arguments.length);
 }
 test(1,2,3);  
 //声明方法2
 var fun = function(){	//函数表达式
 	co*n*sole.log('fdf')'
 }
 fun();        //fun 是变量名,不是函数名   
作用域

代码名字(变量)在某个范围起作用
提升程序可靠性,较少命名冲突

 <script>
 var num = 0; // 全局作用
 function getSum(n1,n2){
	var sum = 0;  //局部作用域(函数作用域)
}
</script>

但是没有块级作用域 if()for(),es6中有

作用域链
嵌套结构中,就近选取变量

预解析

代码执行自上而下;
预解析分为变量预解析和函数预解析
(1)变量提升,吧所有声明的变量提到当前作用域的最前面,不提升赋值 *** 作
(2)函数提升:吧所有的函数声明提升到当前作用域的最前面,不调用函数

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1499240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-25
下一篇 2022-06-25

发表评论

登录后才能评论

评论列表(0条)

保存