您的当前位置:首页正文

JS中运算符i++与++i的详细分析

2020-11-27 来源:意榕旅游网

请看下面代码:

<!DOCTYPE html>
<html>
<head lang="en">
 <meta charset="UTF-8">
 <title></title>
</head>
<body>
 <script>
 var a=10,b=20,c=30;
 ++a;
 a++;
 e=++a+(++b)+(c++)+a++;
 alert(e);
 </script>
</body>
</html>

解答此题首先弄明白:i++返回的是自增之前的值,++i返回的则是自增后的值。

如:
var i = 1;
var a = i++; //a = 1; 此时i先将值1赋给a,然后自己+1,i=2;
var b = ++i; //b = 3;此时i先自己+1为3.再给b赋值,b=3;
再看此题:那么++a意思为a=a+1 a为11,此时不涉及运算优先级的问题。
	a++意思为a=a+1 a为12 ,此时仍旧不涉及运算优先级的问题。
	当e=++a+(++b)+(c++)+a++;时,必须考虑运算级的问题。
	此时:++a a先自己+1 然后将值赋给结果:13 a=13
	++b b先自己+1 然后将值赋给结果:21 b=21
	C++ 先将c值赋给结果:30 c自己+1 c=31
	a++ 先将a值13赋给结果:13 a自己+1 a=14
	此时所有结果加起来:13+21+30+13=77
	本文讲解了JS中运算符i++与++i的详细分析,更多相关内容请关注Gxl网。
	相关推荐:
显示全文