Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Analyse der Operatoren i++ und ++i in JS

Detaillierte Analyse der Operatoren i++ und ++i in JS

jacklove
jackloveOriginal
2018-06-15 15:03:502784Durchsuche

Bitte schauen Sie sich den folgenden Code an:

<!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>

Um diese Frage zu beantworten, verstehen Sie zunächst: i++ gibt den Wert vor der automatischen Inkrementierung zurück, ++i gibt den Wert nach der automatischen Inkrementierung zurück.

如:
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的详细分析,更多相关内容请关注php中文网。
			相关推荐:

Das obige ist der detaillierte Inhalt vonDetaillierte Analyse der Operatoren i++ und ++i in JS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn