diff options
author | catlair <catlair@qq.com> | 2022-03-10 18:47:50 +0800 |
---|---|---|
committer | Irvin <irvinfly@gmail.com> | 2022-03-15 21:36:59 +0800 |
commit | 42c588ef3ded2d0cc2f4a71d5d5f90a2c66e534e (patch) | |
tree | 77011a149d6dab2c49864c170528b6a92bff96d5 | |
parent | 283c65cafc545c37b57ed0493b5c5e053ecbbb92 (diff) | |
download | translated-content-42c588ef3ded2d0cc2f4a71d5d5f90a2c66e534e.tar.gz translated-content-42c588ef3ded2d0cc2f4a71d5d5f90a2c66e534e.tar.bz2 translated-content-42c588ef3ded2d0cc2f4a71d5d5f90a2c66e534e.zip |
与英文版同步并翻译为 zh-CN
3 files changed, 100 insertions, 119 deletions
diff --git a/files/zh-cn/web/javascript/reference/operators/left_shift_assignment/index.md b/files/zh-cn/web/javascript/reference/operators/left_shift_assignment/index.md index 4499d3473c..af5ca56da0 100644 --- a/files/zh-cn/web/javascript/reference/operators/left_shift_assignment/index.md +++ b/files/zh-cn/web/javascript/reference/operators/left_shift_assignment/index.md @@ -1,55 +1,47 @@ --- -title: Left shift assignment (<<=) +title: 左移赋值 (<<=) slug: Web/JavaScript/Reference/Operators/Left_shift_assignment -translation_of: Web/JavaScript/Reference/Operators/Left_shift_assignment +tags: + - Assignment operator + - JavaScript + - Language feature + - Operator + - Reference +browser-compat: javascript.operators.left_shift_assignment --- -<div>{{jsSidebar("Operators")}}</div> +{{jsSidebar("Operators")}} -<p>The left shift assignment operator (<code><<=</code>) moves the specified amount of bits to the left and assigns the result to the variable.</p> +左移赋值运算符 (`<<=`) 将变量向左移动指定数量的位,并将结果赋值给变量。 -<div>{{EmbedInteractiveExample("pages/js/expressions-left-shift-assignment.html")}}</div> +{{EmbedInteractiveExample("pages/js/expressions-left-shift-assignment.html")}} +## 语法 +```js +x <<= y // x = x << y +``` +## 例子 +### 使用左移赋值 -<h2 id="语法">语法</h2> - -<pre class="syntaxbox"><strong>Operator:</strong> x <<= y -<strong>Meaning:</strong> x = x << y</pre> - -<h2 id="Examples">Examples</h2> - -<h3 id="Using_left_shift_assignment">Using left shift assignment</h3> - -<pre class="brush: js">let a = 5; +```js +let a = 5; // 00000000000000000000000000000101 -a <<= 2; // 20 -// 00000000000000000000000000010100</pre> - -<h2 id="Specifications">Specifications</h2> - -<table class="standard-table"> - <tbody> - <tr> - <th scope="col">Specification</th> - </tr> - <tr> - <td>{{SpecName('ESDraft', '#sec-assignment-operators', 'Assignment operators')}}</td> - </tr> - </tbody> -</table> +a <<= 2; // 20 +// 00000000000000000000000000010100 +``` -<h2 id="Browser_compatibility">Browser compatibility</h2> +## 规范 +{{Specifications}} +## 浏览器兼容性 -<p>{{Compat("javascript.operators.left_shift_assignment")}}</p> +{{Compat("javascript.operators.left_shift_assignment")}} -<h2 id="See_also">See also</h2> +## 参考 -<ul> - <li><a href="/en-US/docs/Web/JavaScript/Guide/Expressions_and_Operators#Assignment">Assignment operators in the JS guide</a></li> - <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/Left_shift">Left shift operator</a></li> -</ul> +- [JS 指南中的赋值运算符](/zh-CN/docs/Web/JavaScript/Guide/Expressions_and_Operators#assignment) +- [左移运算符](/zh-CN/docs/Web/JavaScript/Reference/Operators/Left_shift) diff --git a/files/zh-cn/web/javascript/reference/operators/right_shift/index.md b/files/zh-cn/web/javascript/reference/operators/right_shift/index.md index b8275e16d7..4c9d5d2898 100644 --- a/files/zh-cn/web/javascript/reference/operators/right_shift/index.md +++ b/files/zh-cn/web/javascript/reference/operators/right_shift/index.md @@ -1,69 +1,66 @@ --- -title: Right shift (>>) +title: 右移 (>>) slug: Web/JavaScript/Reference/Operators/Right_shift -translation_of: Web/JavaScript/Reference/Operators/Right_shift +tags: + - Bitwise operator + - JavaScript + - Language feature + - Operator + - Reference +browser-compat: javascript.operators.right_shift --- -<div>{{jsSidebar("Operators")}}</div> +{{jsSidebar("Operators")}} -<p>The <strong>right shift operator (<code>>></code>)</strong> shifts the first operand the specified number of bits to the right. Excess bits shifted off to the right are discarded. Copies of the leftmost bit are shifted in from the left. Since the new leftmost bit has the same value as the previous leftmost bit, the sign bit (the leftmost bit) does not change. Hence the name "sign-propagating".</p> +**右移操作符 (`>>`)** 是将一个操作数按指定移动的位数向右移动,右边移出位被丢弃,左边移出的空位补符号位(最左边那位)。 -<div>{{EmbedInteractiveExample("pages/js/expressions-right-shift.html")}}</div> +{{EmbedInteractiveExample("pages/js/expressions-right-shift.html")}} -<h2 id="语法">语法</h2> +## 语法 -<pre class="syntaxbox"><code><var>a</var> >> <var>b</var></code> -</pre> +```js +a >> b +``` -<h2 id="Description">Description</h2> +## 描述 -<p>This operator shifts the first operand the specified number of bits to the right. Excess bits shifted off to the right are discarded. Copies of the leftmost bit are shifted in from the left. Since the new leftmost bit has the same value as the previous leftmost bit, the sign bit (the leftmost bit) does not change. Hence the name "sign-propagating".</p> +**右移操作符 (`>>`)** 是将一个操作数按指定移动的位数向右移动。 +右边移出位将被丢弃,然后用最左边的这一位(符号位)填充左边的空位。 +由于新的数字最左边位与之前数字的最左边位是相同值,故符号位(最左边的位)不会改变,因此被称为“符号位传播” (sign-propagating). -<p>For example, <code>9 >> 2</code> yields 2:</p> +例如 `9 >> 2` 得到 2: -<pre class="brush: js">. 9 (base 10): 00000000000000000000000000001001 (base 2) +```js +. 9 (十进制): 00000000000000000000000000001001 (二进制) -------------------------------- -9 >> 2 (base 10): 00000000000000000000000000000010 (base 2) = 2 (base 10) -</pre> +9 >> 2 (十进制): 00000000000000000000000000000010 (二进制) = 2 (十进制) +``` -<p>Likewise, <code>-9 >> 2</code> yields <code>-3</code>, because the sign is preserved:</p> +同理, `-9 >> 2` 得到 `-3`, 因为它的符号位得到保留: -<pre class="brush: js">. -9 (base 10): 11111111111111111111111111110111 (base 2) +```js +. -9 (base 10): 11111111111111111111111111110111 (base 2) -------------------------------- --9 >> 2 (base 10): 11111111111111111111111111111101 (base 2) = -3 (base 10) -</pre> +-9 >> 2 (base 10): 11111111111111111111111111111101 (base 2) = -3 (base 10) +``` -<h2 id="Examples">Examples</h2> +## 例子 -<h3 id="Using_right_shift">Using right shift</h3> +### 使用右移操作 -<pre class="brush: js"> 9 >> 2; // 2 --9 >> 2; // -3 -</pre> +```js + 9 >> 2; // 2 +-9 >> 2; // -3 +``` -<h2 id="Specifications">Specifications</h2> +## 规范 -<table class="standard-table"> - <thead> - <tr> - <th scope="col">Specification</th> - </tr> - </thead> - <tbody> - <tr> - <td>{{SpecName('ESDraft', '#sec-bitwise-shift-operators', 'Bitwise Shift Operators')}}</td> - </tr> - </tbody> -</table> +{{Specifications}} -<h2 id="Browser_compatibility">Browser compatibility</h2> +## 浏览器兼容性 +{{Compat}} +## 参见 -<p>{{Compat("javascript.operators.right_shift")}}</p> - -<h2 id="See_also">See also</h2> - -<ul> - <li><a href="/en-US/docs/Web/JavaScript/Guide/Expressions_and_Operators#Bitwise">Bitwise operators in the JS guide</a></li> - <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/Right_shift_assignment">Right shift assignment operator</a></li> -</ul> +- [JS 指南中的位运算](/zh-CN/docs/Web/JavaScript/Guide/Expressions_and_Operators#bitwise_operators) +- [右移赋值操作符](/zh-CN/docs/Web/JavaScript/Reference/Operators/Right_shift_assignment) diff --git a/files/zh-cn/web/javascript/reference/operators/right_shift_assignment/index.md b/files/zh-cn/web/javascript/reference/operators/right_shift_assignment/index.md index f3698e9737..7afdf1311e 100644 --- a/files/zh-cn/web/javascript/reference/operators/right_shift_assignment/index.md +++ b/files/zh-cn/web/javascript/reference/operators/right_shift_assignment/index.md @@ -1,55 +1,47 @@ --- -title: Right shift assignment (>>=) +title: 右移赋值 (>>=) slug: Web/JavaScript/Reference/Operators/Right_shift_assignment -translation_of: Web/JavaScript/Reference/Operators/Right_shift_assignment +tags: + - Assignment operator + - JavaScript + - Language feature + - Operator + - Reference +browser-compat: javascript.operators.right_shift_assignment --- -<div>{{jsSidebar("Operators")}}</div> +{{jsSidebar("Operators")}} -<p>The right shift assignment operator (<code>>>=</code>) moves the specified amount of bits to the right and assigns the result to the variable.</p> +右移赋值运算符 (`>>=`) 将变量向右移动指定数量的位,并将结果赋值给变量。 -<div>{{EmbedInteractiveExample("pages/js/expressions-right-shift-assignment.html")}}</div> +{{EmbedInteractiveExample("pages/js/expressions-right-shift-assignment.html")}} +## 语法 +```js +x >>= y // x = x >> y +``` +## 例子 +### 使用右移赋值运算符 -<h2 id="语法">语法</h2> - -<pre class="syntaxbox"><strong>Operator:</strong> x >>= y -<strong>Meaning:</strong> x = x >> y</pre> - -<h2 id="Examples">Examples</h2> - -<h3 id="Using_right_shift_assignment">Using right shift assignment</h3> - -<pre class="brush: js">let a = 5; // (00000000000000000000000000000101) -a >>= 2; // 1 (00000000000000000000000000000001) +```js +let a = 5; // (00000000000000000000000000000101) +a >>= 2; // 1 (00000000000000000000000000000001) let b = -5; // (-00000000000000000000000000000101) -b >>= 2; // -2 (-00000000000000000000000000000010)</pre> - -<h2 id="Specifications">Specifications</h2> - -<table class="standard-table"> - <tbody> - <tr> - <th scope="col">Specification</th> - </tr> - <tr> - <td>{{SpecName('ESDraft', '#sec-assignment-operators', 'Assignment operators')}}</td> - </tr> - </tbody> -</table> +b >>= 2; // -2 (-00000000000000000000000000000010) +``` -<h2 id="Browser_compatibility">Browser compatibility</h2> +## 规范 +{{Specifications}} +## 浏览器兼容性 -<p>{{Compat("javascript.operators.right_shift_assignment")}}</p> +{{Compat}} -<h2 id="See_also">See also</h2> +## 参考 -<ul> - <li><a href="/en-US/docs/Web/JavaScript/Guide/Expressions_and_Operators#Assignment">Assignment operators in the JS guide</a></li> - <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/Right_shift">Right shift operator</a></li> -</ul> +- [JS 指南中的赋值运算符](/zh-CN/docs/Web/JavaScript/Guide/Expressions_and_Operators#assignment) +- [右移运算符](/zh-CN/docs/Web/JavaScript/Reference/Operators/Right_shift) |