aboutsummaryrefslogtreecommitdiff
path: root/files/zh-cn/web/javascript/reference/operators/assignment_operators
diff options
context:
space:
mode:
authorFlorian Merz <me@fiji-flo.de>2021-02-11 12:56:40 +0100
committerFlorian Merz <me@fiji-flo.de>2021-02-11 12:56:40 +0100
commit310fd066e91f454b990372ffa30e803cc8120975 (patch)
treed5d900deb656a5da18e0b60d00f0db73f3a2e88e /files/zh-cn/web/javascript/reference/operators/assignment_operators
parent8260a606c143e6b55a467edf017a56bdcd6cba7e (diff)
downloadtranslated-content-310fd066e91f454b990372ffa30e803cc8120975.tar.gz
translated-content-310fd066e91f454b990372ffa30e803cc8120975.tar.bz2
translated-content-310fd066e91f454b990372ffa30e803cc8120975.zip
unslug zh-cn: move
Diffstat (limited to 'files/zh-cn/web/javascript/reference/operators/assignment_operators')
-rw-r--r--files/zh-cn/web/javascript/reference/operators/assignment_operators/index.html413
1 files changed, 0 insertions, 413 deletions
diff --git a/files/zh-cn/web/javascript/reference/operators/assignment_operators/index.html b/files/zh-cn/web/javascript/reference/operators/assignment_operators/index.html
deleted file mode 100644
index 66ae471cde..0000000000
--- a/files/zh-cn/web/javascript/reference/operators/assignment_operators/index.html
+++ /dev/null
@@ -1,413 +0,0 @@
----
-title: 赋值运算符
-slug: Web/JavaScript/Reference/Operators/Assignment_Operators
-tags:
- - JavaScript
- - 运算符
-translation_of: Web/JavaScript/Reference/Operators#Assignment_operators
-translation_of_original: Web/JavaScript/Reference/Operators/Assignment_Operators
----
-<div>{{jsSidebar("Operators")}}</div>
-
-<p>赋值运算符(<strong>assignment operator</strong>)基于右值(right operand)的值,给左值(left operand)赋值。</p>
-
-<div>{{EmbedInteractiveExample("pages/js/expressions-assignment.html")}}</div>
-
-<p class="hidden">本文的交互示例的源代码存储在GithHub仓库。如果你愿意贡献更多交互示例,请克隆仓库 <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> 并提交 pull request.</p>
-
-<h2 id="概述">概述</h2>
-
-<p>基本的赋值运算符是等号(<code>=</code>),该运算符把它右边的运算值赋给左边。即,<code>x = y</code> 把 <code>y</code> 的值赋给 <code>x</code>。 其他的赋值运算符通常是标准运算符的简写形式,如下面的定义与示例。 </p>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <th>名称</th>
- <th>简写形式</th>
- <th>含义</th>
- </tr>
- <tr>
- <td><a href="#Assignment">赋值(Assignment)</a></td>
- <td><code>x = y</code></td>
- <td><code>x = y</code></td>
- </tr>
- <tr>
- <td><a href="#Addition_assignment">加赋值(Addition assignment)</a></td>
- <td><code>x += y</code></td>
- <td><code>x = x + y</code></td>
- </tr>
- <tr>
- <td><a href="#Subtraction_assignment">减赋值(Subtraction assignment)</a></td>
- <td><code>x -= y</code></td>
- <td><code>x = x - y</code></td>
- </tr>
- <tr>
- <td><a href="#Multiplication_assignment">乘赋值(Multiplication assigment)</a></td>
- <td><code>x *= y</code></td>
- <td><code>x = x * y</code></td>
- </tr>
- <tr>
- <td><a href="#Division_assignment">除赋值(Division assignment)</a></td>
- <td><code>x /= y</code></td>
- <td><code>x = x / y</code></td>
- </tr>
- <tr>
- <td><a href="#Remainder_assignment">模赋值(Remainder assignment)</a></td>
- <td><code>x %= y</code></td>
- <td><code>x = x % y</code></td>
- </tr>
- <tr>
- <td><a href="#Exponentiation_assignment">指数赋值(Exponentiation assignment)</a></td>
- <td><code>x **= y</code></td>
- <td><code>x = x ** y</code></td>
- </tr>
- <tr>
- <td><a href="#Left_shift_assignment">左移赋值(Left shift assignment)</a></td>
- <td><code>x &lt;&lt;= y</code></td>
- <td><code>x = x &lt;&lt; y</code></td>
- </tr>
- <tr>
- <td><a href="#Right_shift_assignment">右移赋值(Right shift assignment)</a></td>
- <td><code>x &gt;&gt;= y</code></td>
- <td><code>x = x &gt;&gt; y</code></td>
- </tr>
- <tr>
- <td><a href="#Unsigned_right_shift_assignment">无符号右移赋值(Unsigned right shift assignment)</a></td>
- <td><code>x &gt;&gt;&gt;= y</code></td>
- <td><code>x = x &gt;&gt;&gt; y</code></td>
- </tr>
- <tr>
- <td><a href="#Bitwise_AND_assignment">按位与赋值(Bitwise AND assignment)</a></td>
- <td><code>x &amp;= y</code></td>
- <td><code>x = x &amp; y</code></td>
- </tr>
- <tr>
- <td><a href="#Bitwise_XOR_assignment">按位异或赋值(Bitwise XOR assignment)</a></td>
- <td><code>x ^= y</code></td>
- <td><code>x = x ^ y</code></td>
- </tr>
- <tr>
- <td><a href="#Bitwise_OR_assignment">按位或赋值(Bitwise OR assignment)</a></td>
- <td><code>x |= y</code></td>
- <td><code>x = x | y</code></td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="赋值"><a name="Assignment">赋值</a></h2>
-
-<p>简单的赋值运算符,把一个值赋给一个变量。为了把一个值赋给多个变量,可以以链式使用赋值运算符。参考下例:</p>
-
-<h4 id="语法">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x = y
-</pre>
-
-<h4 id="示例">示例</h4>
-
-<pre class="brush: js">// Assuming the following variables
-// x = 5
-// y = 10
-// z = 25
-
-x = y // x is 10
-x = y = z // x, y and z are all 25
-</pre>
-
-<h3 id="加赋值(Addition_assignment)"><a name="Addition_assignment">加赋值(Addition assignment)</a></h3>
-
-<p>加赋值运算符把一个右值与一个变量相加,然后把相加的结果赋给该变量。两个操作数的类型决定了加赋值运算符的行为。算术相加或字符串连接都有可能。更多细节参考 {{jsxref("Operators/Arithmetic_Operators", "addition operator", "#Addition", 1)}}。</p>
-
-<h4 id="语法_2">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x += y
-<strong>Meaning:</strong> x = x + y
-</pre>
-
-<h4 id="示例_2">示例</h4>
-
-<pre class="brush: js">// 定义下列变量
-// foo = 'foo'
-// bar = 5
-// baz = true
-
-
-// Number + Number -&gt; addition
-bar += 2 // 7
-
-// Boolean + Number -&gt; addition
-baz += 1 // 2
-
-// Boolean + Boolean -&gt; addition
-baz += false // 1
-
-// Number + String -&gt; concatenation
-bar += 'foo' // "5foo"
-
-// String + Boolean -&gt; concatenation
-foo += false // "foofalse"
-
-// String + String -&gt; concatenation
-foo += 'bar' // "foobar"
-</pre>
-
-<h3 id="减赋值(Subtraction_assignment)"><a name="Subtraction_assignment">减赋值(Subtraction assignment)</a></h3>
-
-<p>减赋值运算符使一个变量减去右值,然后把结果赋给该变量。更多细节查看 {{jsxref("Operators/Arithmetic_Operators", "subtraction operator", "#Subtraction", 1)}} 。</p>
-
-<h4 id="语法_3">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x -= y
-<strong>Meaning:</strong> x = x - y
-</pre>
-
-<h4 id="示例_3">示例</h4>
-
-<pre class="brush: js">// 假定已定义了下面的变量
-// bar = 5
-
-bar -= 2 // 3
-bar -= "foo" // NaN
-</pre>
-
-<h3 id="乘赋值(Multiplication_assignment)"><a name="Multiplication_assignment">乘赋值(Multiplication assignment)</a></h3>
-
-<p>乘赋值运算符使一个变量乘以右值,然后把相成的结果赋给该变量。更多细节查看 {{jsxref("Operators/Arithmetic_Operators", "multiplication operator", "#Multiplication", 1)}}。</p>
-
-<h4 id="语法_4">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x *= y
-<strong>Meaning:</strong> x = x * y
-</pre>
-
-<h4 id="示例_4">示例</h4>
-
-<pre class="brush: js">// 假定已定义了下面的变量
-// bar = 5
-
-bar *= 2 // 10
-bar *= 'foo' // NaN
-</pre>
-
-<h3 id="除赋值(Division_assignment)"><a name="Division_assignment">除赋值(Division assignment)</a></h3>
-
-<p>除赋值运算符使一个变量除以右值,然后把结果赋给该变量。更多细节查看 {{jsxref("Operators/Arithmetic_Operators", "division operator", "#Division", 1)}}。</p>
-
-<h4 id="语法_5">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x /= y
-<strong>Meaning:</strong> x = x / y
-</pre>
-
-<h4 id="示例_5">示例</h4>
-
-<pre class="brush: js">// 假定已定义了下面的变量
-// bar = 5
-
-bar /= 2 // 2.5
-bar /= "foo" // NaN
-bar /= 0 // Infinity
-</pre>
-
-<h3 id="模赋值(Remainder_assignment)"><a name="Remainder_assignment">模赋值(Remainder assignment)</a></h3>
-
-<p>模赋值运算符使一个变量除以右值,然后把余数赋给该变量。更多细节查看 {{jsxref("Operators/Arithmetic_Operators", "remainder operator", "#Remainder", 1)}}。</p>
-
-<h4 id="语法_6">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x %= y
-<strong>Meaning:</strong> x = x % y
-</pre>
-
-<h4 id="示例_6">示例</h4>
-
-<pre class="brush: js">// Assuming the following variable
-// bar = 5
-
-bar %= 2 // 1
-bar %= 'foo' // NaN
-bar %= 0 // NaN
-</pre>
-
-<h3 id="指数赋值(Exponentiation_assignment)"><a id="Exponentiation_assignment" name="Exponentiation_assignment">指数赋值(Exponentiation assignment)</a></h3>
-
-<p>指数赋值运算符使一个变量为底数、以右值为指数的指数运算(乘方)结果赋给该变量。更多细节查看 {{jsxref("Operators/Arithmetic_Operators", "算术运算符", "#Exponentiation", 1)}}。</p>
-
-<h4 id="语法_7">语法</h4>
-
-<pre class="syntaxbox"><strong>语法:</strong> x **= y
-<strong>含义:</strong> x = x ** y
-</pre>
-
-<h4 id="示例_7">示例</h4>
-
-<pre class="brush: js">// Assuming the following variable
-// bar = 5
-
-bar **= 2 // 25
-bar **= 'foo' // NaN</pre>
-
-<h3 id="左移赋值(Left_shift_assignment)"><a name="Left_shift_assignment">左移赋值(Left shift assignment)</a></h3>
-
-<p>左移赋值运算符使变量向左移动指定位数的比特位,然后把结果赋给该变量。更多细节查看 {{jsxref("Operators/Bitwise_Operators", "left shift operator", "#Left_shift", 1)}}。</p>
-
-<h4 id="语法_8">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x &lt;&lt;= y
-<strong>Meaning:</strong> x = x &lt;&lt; y
-</pre>
-
-<h4 id="示例_8">示例</h4>
-
-<pre class="brush: js">var bar = 5; // (00000000000000000000000000000101)
-bar &lt;&lt;= 2; // 20 (00000000000000000000000000010100)
-</pre>
-
-<h3 id="右移赋值(Right_shift_assignment)"><a name="Right_shift_assignment">右移赋值(Right shift assignment)</a></h3>
-
-<p>右移赋值运算符使变量向右移指定位数的比特位,然后把结果赋给该变量。更多细节查看 {{jsxref("Operators/Bitwise_Operators", "right shift operator", "#Right_shift", 1)}}。</p>
-
-<h4 id="语法_9">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x &gt;&gt;= y
-<strong>Meaning:</strong> x = x &gt;&gt; y
-</pre>
-
-<h4 id="示例_9">示例</h4>
-
-<pre class="brush: js">var bar = 5; // (00000000000000000000000000000101)
-bar &gt;&gt;= 2; // 1 (00000000000000000000000000000001)
-
-var bar = -5; // (-00000000000000000000000000000101)
-bar &gt;&gt;= 2; // -2 (-00000000000000000000000000000010)
-</pre>
-
-<h3 id="无符号右移赋值(Unsigned_right_shift_assignment)"><a name="Unsigned_right_shift_assignment">无符号右移赋值(Unsigned right shift assignment)</a></h3>
-
-<p>无符号右移赋值运算符向右移动指定数量的比特位,然后把结果赋给变量。更多细节查看 {{jsxref("Operators/Bitwise_Operators", " unsigned right shift operator", "#Unsigned_right_shift", 1)}}。</p>
-
-<h4 id="语法_10">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x &gt;&gt;&gt;= y
-<strong>Meaning:</strong> x = x &gt;&gt;&gt; y
-</pre>
-
-<h4 id="示例_10">示例</h4>
-
-<pre class="brush: js">var bar = 5; // (00000000000000000000000000000101)
-bar &gt;&gt;&gt;= 2; // 1 (00000000000000000000000000000001)
-
-var bar = -5; // (-00000000000000000000000000000101)
-bar &gt;&gt;&gt;= 2; // 1073741822 (00111111111111111111111111111110)</pre>
-
-<h3 id="按位与赋值(Bitwise_AND_assignment)"><a name="Bitwise_AND_assignment">按位与赋值(Bitwise AND assignment)</a></h3>
-
-<p>按位与赋值运算符使用两个操作值的二进制表示,执行按位与运算,并把结果赋给变量。更多细节查看 {{jsxref("Operators/Bitwise_Operators", "bitwise AND operator", "#Bitwise_AND", 1)}}。</p>
-
-<h4 id="语法_11">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x &amp;= y
-<strong>Meaning:</strong> x = x &amp; y
-</pre>
-
-<h4 id="示例_11">示例</h4>
-
-<pre class="brush: js">var bar = 5;
-// 5: 00000000000000000000000000000101
-// 2: 00000000000000000000000000000010
-bar &amp;= 2; // 0
-</pre>
-
-<h3 id="按位异或赋值(Bitwise_XOR_assignment)"><a name="Bitwise_XOR_assignment">按位异或赋值(Bitwise XOR assignment)</a></h3>
-
-<p>按位异或赋值运算符使用两个操作值的二进制表示,执行二进制异或运算,并把结果赋给变量。更多细节查看 {{jsxref("Operators/Bitwise_Operators", "bitwise XOR operator", "#Bitwise_XOR", 1)}}。</p>
-
-<h4 id="语法_12">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x ^= y
-<strong>Meaning:</strong> x = x ^ y
-</pre>
-
-<h4 id="示例_12">示例</h4>
-
-<pre class="brush: js">var bar = 5;
-bar ^= 2; // 7
-// 5: 00000000000000000000000000000101
-// 2: 00000000000000000000000000000010
-// -----------------------------------
-// 7: 00000000000000000000000000000111
-</pre>
-
-<h3 id="按位或赋值(Bitwise_OR_assignment)"><a name="Bitwise_OR_assignment">按位或赋值(Bitwise OR assignment)</a></h3>
-
-<p>按位或赋值运算符使用两个操作值的二进制表示,执行按位或运算,并把结果赋给变量。更多细节查看 {{jsxref("Operators/Bitwise_Operators", "bitwise OR operator", "#Bitwise_OR", 1)}}。</p>
-
-<h4 id="语法_13">语法</h4>
-
-<pre class="syntaxbox"><strong>Operator:</strong> x |= y
-<strong>Meaning:</strong> x = x | y
-</pre>
-
-<h4 id="示例_13">示例</h4>
-
-<pre class="brush: js">var bar = 5;
-bar |= 2; // 7
-// 5: 00000000000000000000000000000101
-// 2: 00000000000000000000000000000010
-// -----------------------------------
-// 7: 00000000000000000000000000000111
-</pre>
-
-<h2 id="示例_14">示例</h2>
-
-<h3 id="带有赋值运算符的左值(Left_operand)">带有赋值运算符的左值(Left operand)</h3>
-
-<p>在某些不常见的情况下,赋值运算符(如<code> x += y</code>)并不等同于表达式( <code>x = x + y</code>)。当一个赋值运算符的左值包含有一个赋值运算符时,左值只会被求值一次。例如:</p>
-
-<pre class="brush: js">a[i++] += 5 // i 执行一次求值
-a[i++] = a[i++] + 5 // i 执行两次求值
-</pre>
-
-<h2 id="规范">规范</h2>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <th scope="col">Specification</th>
- <th scope="col">Status</th>
- <th scope="col">Comment</th>
- </tr>
- <tr>
- <td>{{SpecName('ESDraft', '#sec-assignment-operators', 'Assignment operators')}}</td>
- <td>{{Spec2('ESDraft')}}</td>
- <td></td>
- </tr>
- <tr>
- <td>{{SpecName('ES2015', '#sec-assignment-operators', 'Assignment operators')}}</td>
- <td>{{Spec2('ES2015')}}</td>
- <td></td>
- </tr>
- <tr>
- <td>{{SpecName('ES5.1', '#sec-11.13', 'Assignment operators')}}</td>
- <td>{{Spec2('ES5.1')}}</td>
- <td></td>
- </tr>
- <tr>
- <td>{{SpecName('ES1', '#sec-11.13', 'Assignment operators')}}</td>
- <td>{{Spec2('ES1')}}</td>
- <td>Initial definition.</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<div class="hidden">该兼容表是由结构化数据生成。如果你愿意贡献数据,请克隆仓库 <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> 并提交 pull request.</div>
-
-<p>{{Compat("javascript.operators.assignment")}}</p>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li><a href="/zh-CN/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators">算术运算符</a></li>
-</ul>