From 91bb457ad936cc147b62f787ec1023342f31e6ca Mon Sep 17 00:00:00 2001 From: "Queen Vinyl Da.i'gyu-Kazotetsu" Date: Tue, 1 Aug 2023 22:16:59 -0700 Subject: [PATCH] ja: Format /web/javascript using Prettier (part 6) --- .../global_objects/string/raw/index.md | 16 +- .../global_objects/string/repeat/index.md | 16 +- .../global_objects/string/replace/index.md | 64 +++---- .../global_objects/string/replaceall/index.md | 32 ++-- .../global_objects/string/search/index.md | 11 +- .../global_objects/string/slice/index.md | 30 ++-- .../global_objects/string/small/index.md | 10 +- .../global_objects/string/split/index.md | 65 +++---- .../global_objects/string/startswith/index.md | 20 +-- .../global_objects/string/strike/index.md | 2 +- .../global_objects/string/string/index.md | 4 +- .../global_objects/string/sub/index.md | 8 +- .../global_objects/string/substr/index.md | 38 ++-- .../global_objects/string/substring/index.md | 61 +++---- .../global_objects/string/sup/index.md | 8 +- .../string/tolocalelowercase/index.md | 10 +- .../string/tolocaleuppercase/index.md | 10 +- .../string/tolowercase/index.md | 2 +- .../global_objects/string/tostring/index.md | 4 +- .../string/touppercase/index.md | 6 +- .../global_objects/string/trim/index.md | 6 +- .../global_objects/string/trimend/index.md | 4 +- .../global_objects/string/trimstart/index.md | 31 ++-- .../global_objects/string/valueof/index.md | 2 +- .../symbol/asynciterator/index.md | 24 +-- .../symbol/description/index.md | 14 +- .../global_objects/symbol/for/index.md | 14 +- .../symbol/hasinstance/index.md | 8 +- .../reference/global_objects/symbol/index.md | 18 +- .../symbol/isconcatspreadable/index.md | 10 +- .../global_objects/symbol/iterator/index.md | 24 +-- .../global_objects/symbol/keyfor/index.md | 4 +- .../global_objects/symbol/match/index.md | 6 +- .../global_objects/symbol/matchall/index.md | 13 +- .../global_objects/symbol/replace/index.md | 4 +- .../global_objects/symbol/search/index.md | 2 +- .../global_objects/symbol/species/index.md | 10 +- .../global_objects/symbol/split/index.md | 4 +- .../global_objects/symbol/symbol/index.md | 16 +- .../symbol/toprimitive/index.md | 16 +- .../global_objects/symbol/tostring/index.md | 8 +- .../symbol/tostringtag/index.md | 18 +- .../symbol/unscopables/index.md | 6 +- .../global_objects/syntaxerror/index.md | 16 +- .../syntaxerror/syntaxerror/index.md | 16 +- .../global_objects/typedarray/index.md | 28 +-- .../global_objects/typedarray/slice/index.md | 1 + .../global_objects/typeerror/index.md | 32 ++-- .../typeerror/typeerror/index.md | 32 ++-- .../global_objects/uint16array/index.md | 6 +- .../uint16array/uint16array/index.md | 6 +- .../global_objects/uint32array/index.md | 6 +- .../uint32array/uint32array/index.md | 6 +- .../global_objects/uint8array/index.md | 6 +- .../uint8array/uint8array/index.md | 6 +- .../global_objects/uint8clampedarray/index.md | 6 +- .../uint8clampedarray/index.md | 6 +- .../global_objects/undefined/index.md | 28 +-- .../global_objects/unescape/index.md | 8 +- .../global_objects/urierror/index.md | 32 ++-- .../global_objects/urierror/urierror/index.md | 32 ++-- .../global_objects/weakmap/delete/index.md | 4 +- .../global_objects/weakmap/get/index.md | 4 +- .../global_objects/weakmap/has/index.md | 4 +- .../reference/global_objects/weakmap/index.md | 10 +- .../global_objects/weakmap/set/index.md | 4 +- .../global_objects/weakmap/weakmap/index.md | 10 +- .../global_objects/weakref/deref/index.md | 2 +- .../global_objects/weakset/delete/index.md | 4 +- .../global_objects/weakset/has/index.md | 4 +- .../reference/global_objects/weakset/index.md | 27 ++- .../global_objects/weakset/weakset/index.md | 8 +- .../reference/iteration_protocols/index.md | 2 +- .../reference/lexical_grammar/index.md | 163 +++++++++--------- .../reference/operators/addition/index.md | 14 +- .../operators/addition_assignment/index.md | 14 +- .../reference/operators/assignment/index.md | 2 +- .../reference/operators/bitwise_and/index.md | 4 +- .../operators/bitwise_and_assignment/index.md | 2 +- .../reference/operators/bitwise_not/index.md | 8 +- .../reference/operators/bitwise_or/index.md | 4 +- .../operators/bitwise_or_assignment/index.md | 2 +- .../reference/operators/bitwise_xor/index.md | 6 +- .../operators/bitwise_xor_assignment/index.md | 10 +- .../reference/operators/class/index.md | 28 +-- .../operators/comma_operator/index.md | 8 +- .../operators/conditional_operator/index.md | 16 +- .../reference/operators/decrement/index.md | 4 +- .../reference/operators/delete/index.md | 62 ++++--- .../reference/operators/division/index.md | 14 +- .../operators/division_assignment/index.md | 10 +- .../reference/operators/equality/index.md | 38 ++-- .../operators/exponentiation/index.md | 22 +-- .../exponentiation_assignment/index.md | 6 +- .../reference/operators/function/index.md | 46 ++--- .../operators/function_star_/index.md | 6 +- .../reference/operators/greater_than/index.md | 52 +++--- .../operators/greater_than_or_equal/index.md | 48 +++--- .../reference/operators/grouping/index.md | 10 +- .../reference/operators/import.meta/index.md | 8 +- 100 files changed, 842 insertions(+), 800 deletions(-) diff --git a/files/ja/web/javascript/reference/global_objects/string/raw/index.md b/files/ja/web/javascript/reference/global_objects/string/raw/index.md index 22a9aa58cdc8fb..89da11f159c59d 100644 --- a/files/ja/web/javascript/reference/global_objects/string/raw/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/raw/index.md @@ -46,7 +46,7 @@ String.raw`templateString` ### String.raw() の使用 ```js -String.raw`Hi\n${2+3}!`; +String.raw`Hi\n${2 + 3}!`; // 'Hi\n5!', the character after 'Hi' // is not a newline character, // '\' and 'n' are two characters. @@ -59,15 +59,19 @@ String.raw`Hi\u000A!`; // You can confirm this by checking the .length property // of the string. -let name = 'Bob'; +let name = "Bob"; String.raw`Hi\n${name}!`; // 'Hi\nBob!', substitutions are processed. // Normally you would not call String.raw() as a function, // but to simulate `foo${2 + 3}bar${'Java' + 'Script'}baz` you can do: -String.raw({ - raw: ['foo', 'bar', 'baz'] -}, 2 + 3, 'Java' + 'Script'); // 'foo5barJavaScriptbaz' +String.raw( + { + raw: ["foo", "bar", "baz"], + }, + 2 + 3, + "Java" + "Script", +); // 'foo5barJavaScriptbaz' // Notice the first argument is an object with a 'raw' property, // whose value is an iterable representing the separated strings // in the template literal. @@ -77,7 +81,7 @@ String.raw({ // For example, 'test' is treated as ['t', 'e', 's', 't']. // The following is equivalent to // `t${0}e${1}s${2}t`: -String.raw({ raw: 'test' }, 0, 1, 2); // 't0e1s2t' +String.raw({ raw: "test" }, 0, 1, 2); // 't0e1s2t' ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/string/repeat/index.md b/files/ja/web/javascript/reference/global_objects/string/repeat/index.md index cb217afe89d52d..1a01cfaad9f96c 100644 --- a/files/ja/web/javascript/reference/global_objects/string/repeat/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/repeat/index.md @@ -34,14 +34,14 @@ str.repeat(count) ### repeat() の使用 ```js -'abc'.repeat(-1) // RangeError -'abc'.repeat(0) // '' -'abc'.repeat(1) // 'abc' -'abc'.repeat(2) // 'abcabc' -'abc'.repeat(3.5) // 'abcabcabc' (小数は丸められ、整数の結果が返されます) -'abc'.repeat(1/0) // RangeError - -({ toString: () => 'abc', repeat: String.prototype.repeat }).repeat(2) +'abc'.repeat(-1); // RangeError +'abc'.repeat(0); // '' +'abc'.repeat(1); // 'abc' +'abc'.repeat(2); // 'abcabc' +'abc'.repeat(3.5); // 'abcabcabc' (小数は丸められ、整数の結果が返されます) +'abc'.repeat(1/0); // RangeError + +({ toString: () => 'abc', repeat: String.prototype.repeat }).repeat(2); // 'abcabc' (repeat() は汎用メソッドです) ``` diff --git a/files/ja/web/javascript/reference/global_objects/string/replace/index.md b/files/ja/web/javascript/reference/global_objects/string/replace/index.md index 035852ab5ab7a3..a56cd0274ffadc 100644 --- a/files/ja/web/javascript/reference/global_objects/string/replace/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/replace/index.md @@ -14,11 +14,11 @@ slug: Web/JavaScript/Reference/Global_Objects/String/replace ## 構文 ```js -replace(regexp, newSubstr) -replace(regexp, replacerFunction) +replace(regexp, newSubstr); +replace(regexp, replacerFunction); -replace(substr, newSubstr) -replace(substr, replacerFunction) +replace(substr, newSubstr); +replace(substr, replacerFunction); ``` ### 引数 @@ -50,13 +50,13 @@ replace(substr, replacerFunction) 置換文字列には以下の特殊な置換パターンを入れることができます。 -| パターン | 導入 | -| --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `$$` | `"$"` を挿入します。 | -| `$&` | 一致した部分文字列を挿入します。 | -| `` $` `` | 一致した部分文字列の直前の文字列の部分を挿入します。 | -| `$'` | 一致した部分文字列の直後の文字列の部分を挿入します。 | -| `$n` | `n` は 100 未満の正の整数です。第一引数が {{jsxref("RegExp")}} オブジェクトだった場合に `n` 番目の括弧でキャプチャされた文字列を挿入します。なお、 `1` から始まることに注意してください。 `n` 番目のグループが存在しない場合 (例えば、グループ 3 の場合)、リテラル (例えば `$3`) として置換されます。 | +| パターン | 導入 | +| --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `$$` | `"$"` を挿入します。 | +| `$&` | 一致した部分文字列を挿入します。 | +| `` $` `` | 一致した部分文字列の直前の文字列の部分を挿入します。 | +| `$'` | 一致した部分文字列の直後の文字列の部分を挿入します。 | +| `$n` | `n` は 100 未満の正の整数です。第一引数が {{jsxref("RegExp")}} オブジェクトだった場合に `n` 番目の括弧でキャプチャされた文字列を挿入します。なお、 `1` から始まることに注意してください。 `n` 番目のグループが存在しない場合 (例えば、グループ 3 の場合)、リテラル (例えば `$3`) として置換されます。 | | `$` | ここで、 `Name` はキャプチャするグループ名です。グループが一致に含まれていなかったり、正規表現に含まれていなかったり、正規表現ではなく文字列が `replace` の第一引数として渡された場合は、リテラル (例えば `$`) に解決されます。名前付きキャプチャグループに対応しているブラウザーのバージョンでのみ利用可能です。 | ### 引数としての関数の指定 @@ -67,13 +67,13 @@ replace(substr, replacerFunction) 関数に与えられる引数は次の通りです。 -| 名前 | 与えられる値 | -| ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `match` | 一致した部分文字列 (上記の `$&` に対応) です。 | +| 名前 | 与えられる値 | +| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `match` | 一致した部分文字列 (上記の `$&` に対応) です。 | | `p1, p2, ...` | `replace()` の第一引数が {{jsxref("RegExp")}} オブジェクトだった場合、n 番目の括弧でキャプチャされたグループの文字列 (上記の `$1`, `$2`, などに対応) です。例えば `/(\a+)(\b+)/` が与えられた場合、`p1` は `\a+` に対する一致、`p2` は `\b+` に対する一致となります。 | -| `offset` | 一致した部分文字列の、分析中の文字列全体の中でのオフセットです(例えば、文字列全体が `'abcd'` で、一致した部分文字列が `'bc'` ならば、この引数は 1 となります)。 | -| `string` | 分析中の文字列全体です。 | -| `groups` | 名前付きキャプチャグループに対応しているブラウザーのバージョンでは、使用されるグループ名をキーとし、一致した部分を値とするオブジェクトになります (一致しない場合は `undefined`)。 | +| `offset` | 一致した部分文字列の、分析中の文字列全体の中でのオフセットです(例えば、文字列全体が `'abcd'` で、一致した部分文字列が `'bc'` ならば、この引数は 1 となります)。 | +| `string` | 分析中の文字列全体です。 | +| `groups` | 名前付きキャプチャグループに対応しているブラウザーのバージョンでは、使用されるグループ名をキーとし、一致した部分を値とするオブジェクトになります (一致しない場合は `undefined`)。 | (引数の正確な個数は、第一引数が {{jsxref("RegExp")}} オブジェクトかどうか、そうならばさらに括弧でキャプチャされるサブ一致がいくつ指定されているかによります。) @@ -82,10 +82,10 @@ replace(substr, replacerFunction) ```js function replacer(match, p1, p2, p3, offset, string) { // p1 is nondigits, p2 digits, and p3 non-alphanumerics - return [p1, p2, p3].join(' - '); + return [p1, p2, p3].join(" - "); } -let newString = 'abc12345#$*%'.replace(/([^\d]*)(\d*)([^\w]*)/, replacer); -console.log(newString); // abc - 12345 - #$*% +let newString = "abc12345#$*%".replace(/([^\d]*)(\d*)([^\w]*)/, replacer); +console.log(newString); // abc - 12345 - #$*% ``` ## 例 @@ -95,9 +95,9 @@ console.log(newString); // abc - 12345 - #$*% 以下の例では、 `replace()` メソッドで正規表現を利用しています。 ```js -let str = 'Twas the night before Xmas...'; -let newstr = str.replace(/xmas/i, 'Christmas'); -console.log(newstr); // Twas the night before Christmas... +let str = "Twas the night before Xmas..."; +let newstr = str.replace(/xmas/i, "Christmas"); +console.log(newstr); // Twas the night before Christmas... ``` これは `'Twas the night before Christmas...'` と出力します。 @@ -110,9 +110,9 @@ console.log(newstr); // Twas the night before Christmas... ```js let re = /apples/gi; -let str = 'Apples are round, and apples are juicy.'; -let newstr = str.replace(re, 'oranges'); -console.log(newstr); // oranges are round, and oranges are juicy. +let str = "Apples are round, and apples are juicy."; +let newstr = str.replace(re, "oranges"); +console.log(newstr); // oranges are round, and oranges are juicy. ``` この出力は 'oranges are round, and oranges are juicy' となります。 @@ -123,9 +123,9 @@ console.log(newstr); // oranges are round, and oranges are juicy. ```js let re = /(\w+)\s(\w+)/; -let str = 'John Smith'; -let newstr = str.replace(re, '$2, $1'); -console.log(newstr); // Smith, John +let str = "John Smith"; +let newstr = str.replace(re, "$2, $1"); +console.log(newstr); // Smith, John ``` この出力は 'Smith, John' となります。 @@ -139,7 +139,7 @@ console.log(newstr); // Smith, John ```js function styleHyphenFormat(propertyName) { function upperToHyphenLower(match, offset, string) { - return (offset > 0 ? '-' : '') + match.toLowerCase(); + return (offset > 0 ? "-" : "") + match.toLowerCase(); } return propertyName.replace(/[A-Z]/g, upperToHyphenLower); } @@ -150,7 +150,7 @@ function styleHyphenFormat(propertyName) { 最終的な置換が行われる前に、一致の*結果*をさらに変換したいので、関数を使用する必要があります。これにより、 {{jsxref("String.prototype.toLowerCase()", "toLowerCase()")}} メソッドの前に一致の評価が行われます。関数を使わず一致を使ってこれを行おうとした場合、 {{jsxref("String.prototype.toLowerCase()", "toLowerCase()")}} は何の効果もないでしょう。 ```js example-bad -let newString = propertyName.replace(/[A-Z]/g, '-' + '$&'.toLowerCase()); // 動作しない +let newString = propertyName.replace(/[A-Z]/g, "-" + "$&".toLowerCase()); // 動作しない ``` これは、 `'$&'.toLowerCase()` は、まずその文字がパターンとして使用される前に(`'$&'` という結果である)文字列リテラルとして評価されるだろうからです。 @@ -164,7 +164,7 @@ let newString = propertyName.replace(/[A-Z]/g, '-' + '$&'.toLowerCase()); // ```js function f2c(x) { function convert(str, p1, offset, s) { - return ((p1 - 32) * 5/9) + 'C'; + return ((p1 - 32) * 5) / 9 + "C"; } let s = String(x); let test = /(-?\d+(?:\.\d*)?)F\b/g; diff --git a/files/ja/web/javascript/reference/global_objects/string/replaceall/index.md b/files/ja/web/javascript/reference/global_objects/string/replaceall/index.md index abee9487f380ea..ec865111e8aaa9 100644 --- a/files/ja/web/javascript/reference/global_objects/string/replaceall/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/replaceall/index.md @@ -42,13 +42,13 @@ const newStr = str.replaceAll(regexp|substr, newSubstr|function) 置換文字列には以下の特殊な置換パターンを含めることができます。 -| パターン | 挿入 | -| --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `$$` | `"$"` を挿入します。 | -| `$&` | マッチした部分文字列を挿入します。 | -| `` $` `` | マッチした部分文字列の直前の文字列の部分を挿入します。 | -| `$'` | マッチした部分文字列の直後の文字列の部分を挿入します。 | -| `$n` | `n` は 100 未満の正の整数です。第一引数が {{jsxref("RegExp")}} オブジェクトだった場合に `n` 番目の括弧でキャプチャされた文字列を挿入します。`1`, `2`, ... でインデックスされることに注意してください。 | +| パターン | 挿入 | +| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `$$` | `"$"` を挿入します。 | +| `$&` | マッチした部分文字列を挿入します。 | +| `` $` `` | マッチした部分文字列の直前の文字列の部分を挿入します。 | +| `$'` | マッチした部分文字列の直後の文字列の部分を挿入します。 | +| `$n` | `n` は 100 未満の正の整数です。第一引数が {{jsxref("RegExp")}} オブジェクトだった場合に `n` 番目の括弧でキャプチャされた文字列を挿入します。`1`, `2`, ... でインデックスされることに注意してください。 | ### 引数としての関数の指定 @@ -58,12 +58,12 @@ const newStr = str.replaceAll(regexp|substr, newSubstr|function) 関数に与えられる引数は次の通りです。 -| 名前 | 与えられる値 | -| --------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `match` | マッチした部分文字列(上記の `$&` に対応)です。 | -| `p1, p2, ...` | `replace()` の第一引数が {{jsxref("RegExp")}} オブジェクトだった場合、_n_ 番目の括弧でキャプチャされたグループの文字列(上記の `$1`, `$2`, などに対応)です。例えば `/(\a+)(\b+)/` が与えられた場合、`p1` は `\a+` に対するマッチ、`p2` は `\b+` に対するマッチとなります。 | -| `offset` | マッチした部分文字列の、分析中の文字列全体の中でのオフセットです(例えば、文字列全体が `'abcd'` で、マッチした部分文字列が `'bc'` ならば、この引数は `1` となります)。 | -| `string` | 分析中の文字列全体です。 | +| 名前 | 与えられる値 | +| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `match` | マッチした部分文字列(上記の `$&` に対応)です。 | +| `p1, p2, ...` | `replace()` の第一引数が {{jsxref("RegExp")}} オブジェクトだった場合、_n_ 番目の括弧でキャプチャされたグループの文字列(上記の `$1`, `$2`, などに対応)です。例えば `/(\a+)(\b+)/` が与えられた場合、`p1` は `\a+` に対するマッチ、`p2` は `\b+` に対するマッチとなります。 | +| `offset` | マッチした部分文字列の、分析中の文字列全体の中でのオフセットです(例えば、文字列全体が `'abcd'` で、マッチした部分文字列が `'bc'` ならば、この引数は `1` となります)。 | +| `string` | 分析中の文字列全体です。 | (引数の正確な個数は、第一引数が {{jsxref("RegExp")}} オブジェクトかどうか、そうならばさらに括弧でキャプチャされるサブマッチがいくつ指定されているかに依ります。) @@ -72,7 +72,7 @@ const newStr = str.replaceAll(regexp|substr, newSubstr|function) ### replaceAll の使用 ```js -'aabbcc'.replaceAll('b', '.'); +"aabbcc".replaceAll("b", "."); // 'aa..cc' ``` @@ -88,8 +88,8 @@ TypeError: replaceAll must be called with a global RegExp これは機能します: ```js example-good -'aabbcc'.replaceAll(/b/g, '.'); -"aa..cc" +"aabbcc".replaceAll(/b/g, "."); +("aa..cc"); ``` ## 仕様 diff --git a/files/ja/web/javascript/reference/global_objects/string/search/index.md b/files/ja/web/javascript/reference/global_objects/string/search/index.md index 36ff894a958a16..2143b56e9a3f57 100644 --- a/files/ja/web/javascript/reference/global_objects/string/search/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/search/index.md @@ -18,6 +18,7 @@ str.search(regexp) ### 引数 - `regexp` + - : [regular expression](/ja/docs/Web/JavaScript/Guide/Regular_Expressions) 正規表現オブジェクトです。 正規表現でないオブジェクト `regexp` が渡された場合は {{jsxref("RegExp")}} オブジェクトに `new RegExp(regexp)` を使用して暗黙的に変換されます。 @@ -39,11 +40,11 @@ str.search(regexp) 次の例は、2 つの異なる正規表現オブジェクトで文字列を検索し、成功した検索 (正の値) と失敗した検索 (`-1`) を表示します。 ```js -let str = "hey JudE" -let re = /[A-Z]/g -let reDot = /[.]/g -console.log(str.search(re)) // 最初の大文字 "J" の位置である 4 を返します -console.log(str.search(reDot)) // '.' ドット記号が見つからないので -1 を返します +let str = "hey JudE"; +let re = /[A-Z]/g; +let reDot = /[.]/g; +console.log(str.search(re)); // 最初の大文字 "J" の位置である 4 を返します +console.log(str.search(reDot)); // '.' ドット記号が見つからないので -1 を返します ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/string/slice/index.md b/files/ja/web/javascript/reference/global_objects/string/slice/index.md index c244249408701d..334355a6ba0028 100644 --- a/files/ja/web/javascript/reference/global_objects/string/slice/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/slice/index.md @@ -12,8 +12,8 @@ slug: Web/JavaScript/Reference/Global_Objects/String/slice ## 構文 ```js -slice(indexStart) -slice(indexStart, indexEnd) +slice(indexStart); +slice(indexStart, indexEnd); ``` ### 引数 @@ -47,15 +47,15 @@ slice(indexStart, indexEnd) 以下の例では、新しい文字列を生成するために `slice()` を使っています。 ```js -const str1 = 'The morning is upon us.', // the length of str1 is 23. - str2 = str1.slice(1, 8), - str3 = str1.slice(4, -2), - str4 = str1.slice(12), - str5 = str1.slice(30); -console.log(str2); // OUTPUT: he morn -console.log(str3); // OUTPUT: morning is upon u -console.log(str4); // OUTPUT: is upon us. -console.log(str5); // OUTPUT: "" +const str1 = "The morning is upon us.", // the length of str1 is 23. + str2 = str1.slice(1, 8), + str3 = str1.slice(4, -2), + str4 = str1.slice(12), + str5 = str1.slice(30); +console.log(str2); // OUTPUT: he morn +console.log(str3); // OUTPUT: morning is upon u +console.log(str4); // OUTPUT: is upon us. +console.log(str5); // OUTPUT: "" ``` ### 負の位置で slice() を使う @@ -63,11 +63,11 @@ console.log(str5); // OUTPUT: "" 下記の例では負の位置で `slice()` を使っています。 ```js -const str = 'The morning is upon us.'; -str.slice(-3); // returns 'us.' +const str = "The morning is upon us."; +str.slice(-3); // returns 'us.' str.slice(-3, -1); // returns 'us' -str.slice(0, -1); // returns 'The morning is upon us' -str.slice(4, -1); // returns 'morning is upon us' +str.slice(0, -1); // returns 'The morning is upon us' +str.slice(4, -1); // returns 'morning is upon us' ``` この例では、文字列の末尾から前方に `11` 番目を開始位置とし、先頭から後方に `16` 番目を終了位置とします。 diff --git a/files/ja/web/javascript/reference/global_objects/string/small/index.md b/files/ja/web/javascript/reference/global_objects/string/small/index.md index e172e37620c948..c801716d010a0f 100644 --- a/files/ja/web/javascript/reference/global_objects/string/small/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/small/index.md @@ -10,7 +10,7 @@ slug: Web/JavaScript/Reference/Global_Objects/String/small ## 構文 ```js -small() +small(); ``` ### 返値 @@ -28,17 +28,17 @@ HTML の {{HTMLElement("small")}} 要素を含む文字列です。 以下の例では文字列のメソッドを使用して、文字列の大きさを変更しています。 ```js -var worldString = 'Hello, world'; +var worldString = "Hello, world"; -console.log(worldString.small()); // Hello, world -console.log(worldString.big()); // Hello, world +console.log(worldString.small()); // Hello, world +console.log(worldString.big()); // Hello, world console.log(worldString.fontsize(7)); // Hello, world ``` {{domxref("HTMLElement/style", "element.style")}} オブジェクトを使用すると、要素の `style` 属性を使用して、次のようにもっと汎用的に操作することができます。 ```js -document.getElementById('yourElemId').style.fontSize = '0.7em'; +document.getElementById("yourElemId").style.fontSize = "0.7em"; ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/string/split/index.md b/files/ja/web/javascript/reference/global_objects/string/split/index.md index b3f50fbbb2c180..10b9f1585d9746 100644 --- a/files/ja/web/javascript/reference/global_objects/string/split/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/split/index.md @@ -54,10 +54,10 @@ str.split([separator[, limit]]) 文字列が空の場合、 `split()` は空の配列ではなく、1 つの空文字列を含む配列を返します。文字列と区切り文字列が共に空文字列の場合、空の配列が返ります。 ```js -const myString = '' -const splits = myString.split() +const myString = ""; +const splits = myString.split(); -console.log(splits) +console.log(splits); // ↪ [""] ``` @@ -66,22 +66,27 @@ console.log(splits) ```js function splitString(stringToSplit, separator) { - const arrayOfStrings = stringToSplit.split(separator) - - console.log('元の文字列: ', stringToSplit) - console.log('区切り文字列: ' , separator) - console.log('配列の要素数は', arrayOfStrings.length, '件: ', arrayOfStrings.join(' / ')) + const arrayOfStrings = stringToSplit.split(separator); + + console.log("元の文字列: ", stringToSplit); + console.log("区切り文字列: ", separator); + console.log( + "配列の要素数は", + arrayOfStrings.length, + "件: ", + arrayOfStrings.join(" / "), + ); } -const tempestString = 'Oh brave new world that has such people in it.' -const monthString = 'Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec' +const tempestString = "Oh brave new world that has such people in it."; +const monthString = "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec"; -const space = ' ' -const comma = ',' +const space = " "; +const comma = ","; -splitString(tempestString, space) -splitString(tempestString) -splitString(monthString, comma) +splitString(tempestString, space); +splitString(tempestString); +splitString(monthString, comma); ``` この例は次のような出力結果を生み出します。 @@ -105,14 +110,14 @@ splitString(monthString, comma) 以下の例では、`split()` は、0 回以上の空白とそれに続くセミコロン、それにさらに続く 0 回以上の空白を探し、それらが見つかったとき、文字列から空白を削除します。`nameList` は、`split()` の結果として返された配列です。 ```js -const names = 'Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand ' +const names = "Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand "; -console.log(names) +console.log(names); -const re = /\s*(?:;|$)\s*/ -const nameList = names.split(re) +const re = /\s*(?:;|$)\s*/; +const nameList = names.split(re); -console.log(nameList) +console.log(nameList); ``` これは 2 つの行を出力します。1 行目は元の文字列を出力し、2 行目は `split` メソッドの実行結果の配列を出力します。 @@ -127,10 +132,10 @@ Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand 以下の例では、`split()` は 文字列中の 0 回以上の空白を探し、見つかった最初の 3 つの分割結果を返します。 ```js -const myString = 'Hello World. How are you doing?' -const splits = myString.split(' ', 3) +const myString = "Hello World. How are you doing?"; +const splits = myString.split(" ", 3); -console.log(splits) +console.log(splits); ``` このスクリプトは以下の例を出力します。 @@ -144,10 +149,10 @@ console.log(splits) `separator` がキャプチャの括弧 `(` `)` を含む正規表現である場合、一致した結果が配列に含まれます。 ```js -const myString = 'Hello 1 word. Sentence number 2.' -const splits = myString.split(/(\d)/) +const myString = "Hello 1 word. Sentence number 2."; +const splits = myString.split(/(\d)/); -console.log(splits) +console.log(splits); ``` このスクリプトは、以下を表示します。 @@ -163,8 +168,8 @@ console.log(splits) > **警告:** この手法は文字列を正しく反転できるとは限りません。 > > ```js -> const str = 'asdfghjkl' -> const strReverse = str.split('').reverse().join('') +> const str = "asdfghjkl"; +> const strReverse = str.split("").reverse().join(""); > // 'lkjhgfdsa' > > // split() が配列を返し、 reverse() および join() が適用できます @@ -173,8 +178,8 @@ console.log(splits) > Unicode 対応の分割を使用している場合でも、文字列に書記素クラスターが含まれていると機能しません (代わりに [esrever](https://github.com/mathiasbynens/esrever) などを使ってください)。 > > ```js -> const str = 'résumé' -> const strReverse = str.split(/(?:)/u).reverse().join('') +> const str = "résumé"; +> const strReverse = str.split(/(?:)/u).reverse().join(""); > // => "́emuśer" > ``` > diff --git a/files/ja/web/javascript/reference/global_objects/string/startswith/index.md b/files/ja/web/javascript/reference/global_objects/string/startswith/index.md index 2b60ea517de95b..60179192b9e201 100644 --- a/files/ja/web/javascript/reference/global_objects/string/startswith/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/startswith/index.md @@ -36,11 +36,11 @@ str.startsWith(searchString[, position]) ```js //startswith -let str = 'To be, or not to be, that is the question.' +let str = "To be, or not to be, that is the question."; -console.log(str.startsWith('To be')) // true -console.log(str.startsWith('not to be')) // false -console.log(str.startsWith('not to be', 10)) // true +console.log(str.startsWith("To be")); // true +console.log(str.startsWith("not to be")); // false +console.log(str.startsWith("not to be", 10)); // true ``` ## ポリフィル @@ -49,12 +49,12 @@ console.log(str.startsWith('not to be', 10)) // true ```js if (!String.prototype.startsWith) { - Object.defineProperty(String.prototype, 'startsWith', { - value: function(search, rawPos) { - var pos = rawPos > 0 ? rawPos|0 : 0; - return this.substring(pos, pos + search.length) === search; - } - }); + Object.defineProperty(String.prototype, "startsWith", { + value: function (search, rawPos) { + var pos = rawPos > 0 ? rawPos | 0 : 0; + return this.substring(pos, pos + search.length) === search; + }, + }); } ``` diff --git a/files/ja/web/javascript/reference/global_objects/string/strike/index.md b/files/ja/web/javascript/reference/global_objects/string/strike/index.md index 85e6a8aabb9193..fecebd88e35139 100644 --- a/files/ja/web/javascript/reference/global_objects/string/strike/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/strike/index.md @@ -28,7 +28,7 @@ HTML の {{HTMLElement("strike")}} 要素を含む文字列です。 以下の例では文字列のメソッドを使用して、文字列の形式を変更しています。 ```js -var worldString = 'Hello, world'; +var worldString = "Hello, world"; console.log(worldString.blink()); // Hello, world console.log(worldString.bold()); // Hello, world diff --git a/files/ja/web/javascript/reference/global_objects/string/string/index.md b/files/ja/web/javascript/reference/global_objects/string/string/index.md index 5611b6d91ae192..45cca07e1769f7 100644 --- a/files/ja/web/javascript/reference/global_objects/string/string/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/string/index.md @@ -26,8 +26,8 @@ String(thing) String 関数と String コンストラクターは異なる結果を生み出します。 ```js -typeof String('Hello world'); // string -typeof new String('Hello world'); // object +typeof String("Hello world"); // string +typeof new String("Hello world"); // object ``` ここでは、この関数は約束通り ({{Glossary("primitive", "プリミティブ")}}型の) 文字列を生成します。しかし、コンストラクターは String 型 (オブジェクトのラッパー) のインスタンスを生成しますので、 String コンストラクターを使用するのは稀だといえます。 diff --git a/files/ja/web/javascript/reference/global_objects/string/sub/index.md b/files/ja/web/javascript/reference/global_objects/string/sub/index.md index 5978c93d52375c..57db92d6380a4b 100644 --- a/files/ja/web/javascript/reference/global_objects/string/sub/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/sub/index.md @@ -28,13 +28,13 @@ HTML の {{HTMLElement("sub")}} 要素を含む文字列です。 以下の例は、 `sub()` と {{jsxref("String.prototype.sup()", "sup()")}} メソッドを使用して文字列を整形しています。 ```js -var superText = '上付き文字'; -var subText = '下付き文字'; +var superText = "上付き文字"; +var subText = "下付き文字"; -console.log('これは' + superText.sup() + 'の見え方を示しています。'); +console.log("これは" + superText.sup() + "の見え方を示しています。"); // "これは上付き文字の見え方を示しています。" -console.log('これは' + subText.sub() + 'の見え方を示しています。'); +console.log("これは" + subText.sub() + "の見え方を示しています。"); // "これは下付き文字の見え方を示しています。" ``` diff --git a/files/ja/web/javascript/reference/global_objects/string/substr/index.md b/files/ja/web/javascript/reference/global_objects/string/substr/index.md index 88224b1f9e8b4c..84a042c9145b0e 100644 --- a/files/ja/web/javascript/reference/global_objects/string/substr/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/substr/index.md @@ -12,8 +12,8 @@ slug: Web/JavaScript/Reference/Global_Objects/String/substr ## 構文 ```js -substr(start) -substr(start, length) +substr(start); +substr(start, length); ``` ### 引数 @@ -45,23 +45,25 @@ Microsoft の JScript は start の位置として負の数に対応していま ```js // only run when the substr() function is broken -if ('ab'.substr(-1) != 'b') { +if ("ab".substr(-1) != "b") { /** * Get the substring of a string * @param {integer} start where to start the substring * @param {integer} length how many characters to return * @return {string} */ - String.prototype.substr = function(substr) { - return function(start, length) { + String.prototype.substr = (function (substr) { + return function (start, length) { // call the original method - return substr.call(this, + return substr.call( + this, // did we get a negative start, calculate how much it is from the beginning of the string // adjust the start parameter for negative value start < 0 ? this.length + start : start, - length) - } - }(String.prototype.substr); + length, + ); + }; + })(String.prototype.substr); } ``` @@ -70,16 +72,16 @@ if ('ab'.substr(-1) != 'b') { ### substr() の使用 ```js -const aString = 'Mozilla'; - -console.log(aString.substr(0, 1)); // 'M' -console.log(aString.substr(1, 0)); // '' -console.log(aString.substr(-1, 1)); // 'a' -console.log(aString.substr(1, -1)); // '' -console.log(aString.substr(-3)); // 'lla' -console.log(aString.substr(1)); // 'ozilla' +const aString = "Mozilla"; + +console.log(aString.substr(0, 1)); // 'M' +console.log(aString.substr(1, 0)); // '' +console.log(aString.substr(-1, 1)); // 'a' +console.log(aString.substr(1, -1)); // '' +console.log(aString.substr(-3)); // 'lla' +console.log(aString.substr(1)); // 'ozilla' console.log(aString.substr(-20, 2)); // 'Mo' -console.log(aString.substr(20, 2)); // '' +console.log(aString.substr(20, 2)); // '' ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/string/substring/index.md b/files/ja/web/javascript/reference/global_objects/string/substring/index.md index f03685412650fd..6e01e986bc648f 100644 --- a/files/ja/web/javascript/reference/global_objects/string/substring/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/substring/index.md @@ -45,23 +45,23 @@ str.substring(indexStart[, indexEnd]) 以下の例では `substring()` を使用して、 `Mozilla` という文字列から文字を取り出して表示します。 ```js -let anyString = 'Mozilla' +let anyString = "Mozilla"; // 'M' と表示 -console.log(anyString.substring(0, 1)) -console.log(anyString.substring(1, 0)) +console.log(anyString.substring(0, 1)); +console.log(anyString.substring(1, 0)); // 'Mozill' と表示 -console.log(anyString.substring(0, 6)) +console.log(anyString.substring(0, 6)); // 'lla' と表示 -console.log(anyString.substring(4)) -console.log(anyString.substring(4, 7)) -console.log(anyString.substring(7, 4)) +console.log(anyString.substring(4)); +console.log(anyString.substring(4, 7)); +console.log(anyString.substring(7, 4)); // 'Mozilla' と表示 -console.log(anyString.substring(0, 7)) -console.log(anyString.substring(0, 10)) +console.log(anyString.substring(0, 7)); +console.log(anyString.substring(0, 10)); ``` ### substring() と length プロパティの使用 @@ -70,14 +70,14 @@ console.log(anyString.substring(0, 10)) ```js // 最後の 4 文字の 'illa' を表示します -let anyString = 'Mozilla' -let anyString4 = anyString.substring(anyString.length - 4) -console.log(anyString4) +let anyString = "Mozilla"; +let anyString4 = anyString.substring(anyString.length - 4); +console.log(anyString4); // 最後の 5 文字の 'zilla' を表示します -let anyString = 'Mozilla' -let anyString5 = anyString.substring(anyString.length - 5) -console.log(anyString5) +let anyString = "Mozilla"; +let anyString5 = anyString.substring(anyString.length - 5); +console.log(anyString5); ``` ### substring() と substr() の違い @@ -89,9 +89,9 @@ console.log(anyString5) さらに、 `substr()` は **ECMAScript の古い機能**とみなされており、将来のバージョンでは削除される可能性があるため、できれば使用しないのが最良です。 ```js -let text = 'Mozilla' -console.log(text.substring(2,5)) // => "zil" -console.log(text.substr(2,3)) // => "zil" +let text = "Mozilla"; +console.log(text.substring(2, 5)); // => "zil" +console.log(text.substr(2, 3)); // => "zil" ``` ### substring() と slice() の違い @@ -101,23 +101,23 @@ console.log(text.substr(2,3)) // => "zil" `substring()` メソッドは `indexStart` が `indexEnd` よりも大きい場合に二つの引数を交換するので、文字列が返されます。 {{jsxref("String.slice", "slice()")}} メソッドはこの場合には空文字列を返します。 ```js -let text = 'Mozilla' -console.log(text.substring(5, 2)) // => "zil" -console.log(text.slice(5, 2)) // => "" +let text = "Mozilla"; +console.log(text.substring(5, 2)); // => "zil" +console.log(text.slice(5, 2)); // => "" ``` どちらかまたは両方の引数が負の数または `NaN` であった場合、 `substring()` メソッドはこれらを `0` として扱います。 ```js -console.log(text.substring(-5, 2)) // => "Mo" -console.log(text.substring(-5, -2)) // => "" +console.log(text.substring(-5, 2)); // => "Mo" +console.log(text.substring(-5, -2)); // => "" ``` `slice()` も `NaN` の引数を `0` として扱いますが、負の数を指定した場合は、文字列の末尾からの文字数で位置を探します。 ```js -console.log(text.slice(-5, 2)) // => "" -console.log(text.slice(-5, -2)) // => "zil" +console.log(text.slice(-5, 2)); // => "" +console.log(text.slice(-5, -2)); // => "zil" ``` 負の数を使用した例は {{jsxref("String.slice", "slice()")}} のページをご覧ください。 @@ -131,13 +131,16 @@ console.log(text.slice(-5, -2)) // => "zil" function replaceString(oldS, newS, fullS) { for (let i = 0; i < fullS.length; ++i) { if (fullS.substring(i, i + oldS.length) == oldS) { - fullS = fullS.substring(0, i) + newS + fullS.substring(i + oldS.length, fullS.length) + fullS = + fullS.substring(0, i) + + newS + + fullS.substring(i + oldS.length, fullS.length); } } - return fullS + return fullS; } -replaceString('World', 'Web', 'Brave New World') +replaceString("World", "Web", "Brave New World"); ``` なお、これは `oldS` が `newS` の部分文字列である場合に無限ループに陥ります。 — 例えば、 '`World`' を '`OtherWorld`' で置き換える場合などです。 @@ -146,7 +149,7 @@ replaceString('World', 'Web', 'Brave New World') ```js function replaceString(oldS, newS, fullS) { - return fullS.split(oldS).join(newS) + return fullS.split(oldS).join(newS); } ``` diff --git a/files/ja/web/javascript/reference/global_objects/string/sup/index.md b/files/ja/web/javascript/reference/global_objects/string/sup/index.md index 542fa9a2d8cf1d..6c03eb32cd9d94 100644 --- a/files/ja/web/javascript/reference/global_objects/string/sup/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/sup/index.md @@ -28,13 +28,13 @@ HTML の {{HTMLElement("sup")}} 要素を含む文字列です。 以下の例は、 {{jsxref("String.prototype.sub()", "sub()")}} と `sup()` メソッドを使用して文字列を整形しています。 ```js -var superText = '上付き文字'; -var subText = '下付き文字'; +var superText = "上付き文字"; +var subText = "下付き文字"; -console.log('これは' + superText.sup() + 'の見え方を示しています。'); +console.log("これは" + superText.sup() + "の見え方を示しています。"); // "これは上付き文字の見え方を示しています。" -console.log('これは' + subText.sub() + 'の見え方を示しています。'); +console.log("これは" + subText.sub() + "の見え方を示しています。"); // "これは下付き文字の見え方を示しています。" ``` diff --git a/files/ja/web/javascript/reference/global_objects/string/tolocalelowercase/index.md b/files/ja/web/javascript/reference/global_objects/string/tolocalelowercase/index.md index 8444dfe34afa1b..5cc516c1757a70 100644 --- a/files/ja/web/javascript/reference/global_objects/string/tolocalelowercase/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/tolocalelowercase/index.md @@ -40,13 +40,13 @@ str.toLocaleLowerCase([locale, locale, ...]) ### toLocaleLowerCase() の使用 ```js -'ALPHABET'.toLocaleLowerCase(); // 'alphabet' +"ALPHABET".toLocaleLowerCase(); // 'alphabet' -'\u0130'.toLocaleLowerCase('tr') === 'i'; // true -'\u0130'.toLocaleLowerCase('en-US') === 'i'; // false +"\u0130".toLocaleLowerCase("tr") === "i"; // true +"\u0130".toLocaleLowerCase("en-US") === "i"; // false -let locales = ['tr', 'TR', 'tr-TR', 'tr-u-co-search', 'tr-x-turkish']; -'\u0130'.toLocaleLowerCase(locales) === 'i'; // true +let locales = ["tr", "TR", "tr-TR", "tr-u-co-search", "tr-x-turkish"]; +"\u0130".toLocaleLowerCase(locales) === "i"; // true ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/string/tolocaleuppercase/index.md b/files/ja/web/javascript/reference/global_objects/string/tolocaleuppercase/index.md index 28e1c7a154b83c..d2929e77db427a 100644 --- a/files/ja/web/javascript/reference/global_objects/string/tolocaleuppercase/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/tolocaleuppercase/index.md @@ -43,14 +43,14 @@ str.toLocaleUpperCase([locale, locale, ...]) ### toLocaleUpperCase() の使用 ```js -'alphabet'.toLocaleUpperCase(); // 'ALPHABET' +"alphabet".toLocaleUpperCase(); // 'ALPHABET' -'Gesäß'.toLocaleUpperCase(); // 'GESÄSS' +"Gesäß".toLocaleUpperCase(); // 'GESÄSS' -'i\u0307'.toLocaleUpperCase('lt-LT'); // 'I' +"i\u0307".toLocaleUpperCase("lt-LT"); // 'I' -let locales = ['lt', 'LT', 'lt-LT', 'lt-u-co-phonebk', 'lt-x-lietuva']; -'i\u0307'.toLocaleUpperCase(locales); // 'I' +let locales = ["lt", "LT", "lt-LT", "lt-u-co-phonebk", "lt-x-lietuva"]; +"i\u0307".toLocaleUpperCase(locales); // 'I' ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/string/tolowercase/index.md b/files/ja/web/javascript/reference/global_objects/string/tolowercase/index.md index 78fa7c7e963d87..930c611788a97c 100644 --- a/files/ja/web/javascript/reference/global_objects/string/tolowercase/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/tolowercase/index.md @@ -28,7 +28,7 @@ str.toLowerCase() ### `toLowerCase()` メソッドの使用 ```js -console.log('ALPHABET'.toLowerCase()); // 'alphabet' +console.log("ALPHABET".toLowerCase()); // 'alphabet' ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/string/tostring/index.md b/files/ja/web/javascript/reference/global_objects/string/tostring/index.md index 1d3852d873298c..6152bfb2b2d72f 100644 --- a/files/ja/web/javascript/reference/global_objects/string/tostring/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/tostring/index.md @@ -30,9 +30,9 @@ str.toString() 以下の例は、{{jsxref("String")}} オブジェクトを表す文字列の値を表示します。 ```js -var x = new String('Hello world'); +var x = new String("Hello world"); -alert(x.toString()) // 'Hello world' を表示します +alert(x.toString()); // 'Hello world' を表示します ``` ## 仕様 diff --git a/files/ja/web/javascript/reference/global_objects/string/touppercase/index.md b/files/ja/web/javascript/reference/global_objects/string/touppercase/index.md index f184d0276f2fba..8128e7ab21b2d3 100644 --- a/files/ja/web/javascript/reference/global_objects/string/touppercase/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/touppercase/index.md @@ -33,7 +33,7 @@ str.toUpperCase() ### 基本的な使用 ```js -console.log('alphabet'.toUpperCase()); // 'ALPHABET' +console.log("alphabet".toUpperCase()); // 'ALPHABET' ``` ### 文字列でない `this` 値を文字列に変換する @@ -43,8 +43,8 @@ console.log('alphabet'.toUpperCase()); // 'ALPHABET' ```js const a = String.prototype.toUpperCase.call({ toString: function toString() { - return 'abcdef'; - } + return "abcdef"; + }, }); const b = String.prototype.toUpperCase.call(true); diff --git a/files/ja/web/javascript/reference/global_objects/string/trim/index.md b/files/ja/web/javascript/reference/global_objects/string/trim/index.md index 8b82b09f60482f..b65a136e11ec6a 100644 --- a/files/ja/web/javascript/reference/global_objects/string/trim/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/trim/index.md @@ -30,7 +30,7 @@ str.trim() ```js if (!String.prototype.trim) { String.prototype.trim = function () { - return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); + return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ""); }; } ``` @@ -42,12 +42,12 @@ if (!String.prototype.trim) { 以下の例は小文字の文字列 `'foo'` を表示します。 ```js -var orig = ' foo '; +var orig = " foo "; console.log(orig.trim()); // 'foo' // 片方からだけ空白を取り除く .trim() の例。 -var orig = 'foo '; +var orig = "foo "; console.log(orig.trim()); // 'foo' ``` diff --git a/files/ja/web/javascript/reference/global_objects/string/trimend/index.md b/files/ja/web/javascript/reference/global_objects/string/trimend/index.md index bdda5bd944ec91..f74ac779110fd5 100644 --- a/files/ja/web/javascript/reference/global_objects/string/trimend/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/trimend/index.md @@ -39,13 +39,13 @@ String.prototype.trimRight.name === "trimEnd"; 以下の例では、小文字の文字列 `' foo'` を表示します。 ```js -var str = ' foo '; +var str = " foo "; console.log(str.length); // 8 str = str.trimEnd(); console.log(str.length); // 6 -console.log(str); // ' foo' +console.log(str); // ' foo' ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/string/trimstart/index.md b/files/ja/web/javascript/reference/global_objects/string/trimstart/index.md index 8001e43170a7ff..df29b7afeda288 100644 --- a/files/ja/web/javascript/reference/global_objects/string/trimstart/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/trimstart/index.md @@ -39,13 +39,13 @@ String.prototype.trimLeft.name === "trimStart"; 以下の例では、小文字の文字列 `'foo '` を表示します。 ```js -var str = ' foo '; +var str = " foo "; console.log(str.length); // 8 str = str.trimStart(); console.log(str.length); // 5 -console.log(str); // 'foo ' +console.log(str); // 'foo ' ``` ## ポリフィル @@ -53,21 +53,22 @@ console.log(str); // 'foo ' ```js //https://github.com/FabioVergani/js-Polyfill_String-trimStart -(function(w){ - var String=w.String, Proto=String.prototype; - - (function(o,p){ - if(p in o?o[p]?false:true:true){ - var r=/^\s+/; - o[p]=o.trimLeft||function(){ - return this.replace(r,'') - } - } - })(Proto,'trimStart'); - +(function (w) { + var String = w.String, + Proto = String.prototype; + + (function (o, p) { + if (p in o ? (o[p] ? false : true) : true) { + var r = /^\s+/; + o[p] = + o.trimLeft || + function () { + return this.replace(r, ""); + }; + } + })(Proto, "trimStart"); })(window); - /* ES6: (w=>{ diff --git a/files/ja/web/javascript/reference/global_objects/string/valueof/index.md b/files/ja/web/javascript/reference/global_objects/string/valueof/index.md index cf8e3983852245..07bfd8a81de92e 100644 --- a/files/ja/web/javascript/reference/global_objects/string/valueof/index.md +++ b/files/ja/web/javascript/reference/global_objects/string/valueof/index.md @@ -30,7 +30,7 @@ str.valueOf() ### `valueOf()` メソッドの使用 ```js -var x = new String('Hello world'); +var x = new String("Hello world"); console.log(x.valueOf()); // "Hello world" を表示します ``` diff --git a/files/ja/web/javascript/reference/global_objects/symbol/asynciterator/index.md b/files/ja/web/javascript/reference/global_objects/symbol/asynciterator/index.md index 3275af7b28ba12..351e3bccba8292 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/asynciterator/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/asynciterator/index.md @@ -21,21 +21,21 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/asyncIterator ```js const myAsyncIterable = { - async* [Symbol.asyncIterator]() { - yield "hello"; - yield "async"; - yield "iteration!"; - } + async *[Symbol.asyncIterator]() { + yield "hello"; + yield "async"; + yield "iteration!"; + }, }; (async () => { - for await (const x of myAsyncIterable) { - console.log(x); - // 期待される出力: - // "hello" - // "async" - // "iteration!" - } + for await (const x of myAsyncIterable) { + console.log(x); + // 期待される出力: + // "hello" + // "async" + // "iteration!" + } })(); ``` diff --git a/files/ja/web/javascript/reference/global_objects/symbol/description/index.md b/files/ja/web/javascript/reference/global_objects/symbol/description/index.md index 0f0eeec8c7ff43..dc136571e9385d 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/description/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/description/index.md @@ -18,18 +18,18 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/description ### description を使用する ```js -Symbol('desc').toString(); // "Symbol(desc)" -Symbol('desc').description; // "desc" -Symbol('').description; // "" -Symbol().description; // undefined +Symbol("desc").toString(); // "Symbol(desc)" +Symbol("desc").description; // "desc" +Symbol("").description; // "" +Symbol().description; // undefined // well-known symbols -Symbol.iterator.toString(); // "Symbol(Symbol.iterator)" +Symbol.iterator.toString(); // "Symbol(Symbol.iterator)" Symbol.iterator.description; // "Symbol.iterator" // global symbols -Symbol.for('foo').toString(); // "Symbol(foo)" -Symbol.for('foo').description; // "foo" +Symbol.for("foo").toString(); // "Symbol(foo)" +Symbol.for("foo").description; // "foo" ``` ## 仕様 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/for/index.md b/files/ja/web/javascript/reference/global_objects/symbol/for/index.md index 2dc8652a75f852..6605dfd50dabe0 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/for/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/for/index.md @@ -42,23 +42,23 @@ Symbol.for(key); ### Symbol.for() の使用 ```js -Symbol.for('foo'); // create a new global symbol -Symbol.for('foo'); // retrieve the already created symbol +Symbol.for("foo"); // create a new global symbol +Symbol.for("foo"); // retrieve the already created symbol // Same global symbol, but not locally -Symbol.for('bar') === Symbol.for('bar'); // true -Symbol('bar') === Symbol('bar'); // false +Symbol.for("bar") === Symbol.for("bar"); // true +Symbol("bar") === Symbol("bar"); // false // The key is also used as the description -var sym = Symbol.for('mario'); +var sym = Symbol.for("mario"); sym.toString(); // "Symbol(mario)" ``` グローバルシンボルキーや他の (ライブラリコードの) グローバルシンボルとの名前の衝突を避けるために、シンボルの前に接頭辞をつけると良いかもしれません。 ```js -Symbol.for('mdn.foo'); -Symbol.for('mdn.bar'); +Symbol.for("mdn.foo"); +Symbol.for("mdn.bar"); ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/hasinstance/index.md b/files/ja/web/javascript/reference/global_objects/symbol/hasinstance/index.md index e905b519f9737d..c2b5db15c7d058 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/hasinstance/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/hasinstance/index.md @@ -18,16 +18,18 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/hasInstance ```js class MyArray { static [Symbol.hasInstance](instance) { - return Array.isArray(instance) + return Array.isArray(instance); } } console.log([] instanceof MyArray); // true ``` ```js -function MyArray() { } +function MyArray() {} Object.defineProperty(MyArray, Symbol.hasInstance, { - value: function(instance) { return Array.isArray(instance); } + value: function (instance) { + return Array.isArray(instance); + }, }); console.log([] instanceof MyArray); // true ``` diff --git a/files/ja/web/javascript/reference/global_objects/symbol/index.md b/files/ja/web/javascript/reference/global_objects/symbol/index.md index f07e8fddc10bd4..19f11ee88ab3ea 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/index.md @@ -14,10 +14,10 @@ Symbol は任意で説明文を持つことができますが、これはデバ ```js // 2 つのシンボルを同じ説明文で使用 -let Sym1 = Symbol("Sym") -let Sym2 = Symbol("Sym") +let Sym1 = Symbol("Sym"); +let Sym2 = Symbol("Sym"); -console.log(Sym1 === Sym2) // "false" を返す +console.log(Sym1 === Sym2); // "false" を返す // シンボルは固有であることが保証されます。 // 同じ説明文でたくさんのシンボルが生成されても、 // 異なる値を持ちます。 @@ -36,8 +36,8 @@ JavaScript の大部分の値は文字列への暗黙的な変換に対応して 例を示します。 ```js -let Sym = Symbol("Sym") -alert(Sym) // TypeError: Cannot convert a Symbol value to a string +let Sym = Symbol("Sym"); +alert(Sym); // TypeError: Cannot convert a Symbol value to a string ``` これは混合しないための「言語ガード」で、これは文字列とシンボルが根本的に異なるため、そして他の型に変換するべきものではないためです。 @@ -45,8 +45,8 @@ alert(Sym) // TypeError: Cannot convert a Symbol value to a string 本当にシンボルを表示したいのであれば、 `.toString()` を呼び出す必要があります。 ```js -let Sym = Symbol("Sym") -alert(Sym.toString()) // Symbol(Sym), now it works +let Sym = Symbol("Sym"); +alert(Sym.toString()); // Symbol(Sym), now it works ``` または、 `symbol.description` プロパティを使用して、説明文を取得することができます。 @@ -78,12 +78,12 @@ well-known symbol の例としては、配列風オブジェクトのための { `Symbol.for(tokenString)` メソッドはレジストリー内のシンボル値を返し、 `Symbol.keyFor(symbolValue)` メソッドはレジストリーからトークンの文字列を返します。この二つは対照的で、下記の結果は `true` です。 ```js -Symbol.keyFor(Symbol.for("tokenString")) === "tokenString" // true +Symbol.keyFor(Symbol.for("tokenString")) === "tokenString"; // true ``` ## 関連情報 -- Wikipedia の [Symbol (programming)](https://en.wikipedia.org/wiki/Symbol_(programming)) (英語) +- Wikipedia の [Symbol (programming)]() (英語) - [JavaScript データ型とデータ構造](/ja/docs/Web/JavaScript/Data_structures) - [Symbols in ECMAScript 6](https://2ality.com/2014/12/es6-symbols.html) - {{jsxref("Symbol")}} (MDN JS リファレンス) diff --git a/files/ja/web/javascript/reference/global_objects/symbol/isconcatspreadable/index.md b/files/ja/web/javascript/reference/global_objects/symbol/isconcatspreadable/index.md index e483aad8433eac..c33e7730b65085 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/isconcatspreadable/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/isconcatspreadable/index.md @@ -50,16 +50,16 @@ console.log(alphaNumeric) // Result: ['a', 'b', 'c', [1, 2, 3] ] 配列状のオブジェクトは、既定で展開しません。`Symbol.isConcatSpreadable` 平坦化した配列を取得するには、`true` に設定する必要があります: ```js -let x = [1, 2, 3] +let x = [1, 2, 3]; let fakeArray = { [Symbol.isConcatSpreadable]: true, length: 2, - 0: 'hello', - 1: 'world' -} + 0: "hello", + 1: "world", +}; -x.concat(fakeArray) // [1, 2, 3, "hello", "world"] +x.concat(fakeArray); // [1, 2, 3, "hello", "world"] ``` > **メモ:** `length` プロパティは、追加するオブジェクトプロパティの数を制御するために使用されます。上記の例では、`length:2` は 2 つのプロパティを追加する必要があることを示しています。 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/iterator/index.md b/files/ja/web/javascript/reference/global_objects/symbol/iterator/index.md index 65fc8f94b85031..f36e07b96cbf24 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/iterator/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/iterator/index.md @@ -32,20 +32,20 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/iterator 次のように独自の反復可能オブジェクトを作成できます。 ```js -const myIterable = {} +const myIterable = {}; myIterable[Symbol.iterator] = function* () { - yield 1; - yield 2; - yield 3; + yield 1; + yield 2; + yield 3; }; -[...myIterable] // [1, 2, 3] +[...myIterable]; // [1, 2, 3] ``` または、[計算されたプロパティ](/ja/docs/Web/JavaScript/Reference/Operators/Object_initializer#computed_property_names)を使用して、クラスやオブジェクト内で反復可能オブジェクトを直接定義できます。 ```js class Foo { - *[Symbol.iterator] () { + *[Symbol.iterator]() { yield 1; yield 2; yield 3; @@ -53,13 +53,13 @@ class Foo { } const someObj = { - *[Symbol.iterator] () { - yield 'a'; - yield 'b'; - } -} + *[Symbol.iterator]() { + yield "a"; + yield "b"; + }, +}; -console.log(...new Foo); // 1, 2, 3 +console.log(...new Foo()); // 1, 2, 3 console.log(...someObj); // 'a', 'b' ``` diff --git a/files/ja/web/javascript/reference/global_objects/symbol/keyfor/index.md b/files/ja/web/javascript/reference/global_objects/symbol/keyfor/index.md index 4c940273d35317..84adb0a06303cb 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/keyfor/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/keyfor/index.md @@ -29,7 +29,7 @@ Symbol.keyFor(sym); ### keyFor() の使用 ```js -var globalSym = Symbol.for('foo'); // create a new global symbol +var globalSym = Symbol.for("foo"); // create a new global symbol Symbol.keyFor(globalSym); // "foo" var localSym = Symbol(); @@ -37,7 +37,7 @@ Symbol.keyFor(localSym); // undefined // well-known symbols are not symbols registered // in the global symbol registry -Symbol.keyFor(Symbol.iterator) // undefined +Symbol.keyFor(Symbol.iterator); // undefined ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/match/index.md b/files/ja/web/javascript/reference/global_objects/symbol/match/index.md index f53e911849b86b..65591249da20c7 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/match/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/match/index.md @@ -22,7 +22,7 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/match 以下のコードは {{jsxref("TypeError")}} を投げます。 ```js -'/bar/'.startsWith(/bar/); +"/bar/".startsWith(/bar/); // Throws TypeError, as /bar/ is a regular expression // and Symbol.match is not modified. @@ -33,8 +33,8 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/match ```js var re = /foo/; re[Symbol.match] = false; -'/foo/'.startsWith(re); // true -'/baz/'.endsWith(re); // false +"/foo/".startsWith(re); // true +"/baz/".endsWith(re); // false ``` ## 仕様 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/matchall/index.md b/files/ja/web/javascript/reference/global_objects/symbol/matchall/index.md index ae54aebfbbd2de..5ae763e2369c1a 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/matchall/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/matchall/index.md @@ -14,9 +14,9 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/matchAll このシンボルは {{jsxref("String.prototype.matchAll()")}}、特に {{jsxref("RegExp.@@matchAll", "RegExp.prototype[@@matchAll]()")}} で使用されます。以下の 2 つの例は同じ結果を返します。 ```js -'abc'.matchAll(/a/); +"abc".matchAll(/a/); -/a/[Symbol.matchAll]('abc'); +/a/[Symbol.matchAll]("abc"); ``` このメソッドは、{{jsxref("RegExp")}} サブクラス内の一致動作をカスタマイズするために存在します。 @@ -29,13 +29,12 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/matchAll ```js let re = /[0-9]+/g; -let str = '2016-01-02|2019-03-07'; +let str = "2016-01-02|2019-03-07"; const numbers = { - *[Symbol.matchAll] (str) { - for (const n of str.matchAll(/[0-9]+/g)) - yield n[0]; - } + *[Symbol.matchAll](str) { + for (const n of str.matchAll(/[0-9]+/g)) yield n[0]; + }, }; console.log(Array.from(str.matchAll(numbers))); diff --git a/files/ja/web/javascript/reference/global_objects/symbol/replace/index.md b/files/ja/web/javascript/reference/global_objects/symbol/replace/index.md index 923781e760a47e..8bc07ea267cd3e 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/replace/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/replace/index.md @@ -21,11 +21,11 @@ class CustomReplacer { this.value = value; } [Symbol.replace](string) { - return string.replace(this.value, '#!@?'); + return string.replace(this.value, "#!@?"); } } -console.log('football'.replace(new CustomReplacer('foo'))); +console.log("football".replace(new CustomReplacer("foo"))); // expected output: "#!@?tball" ``` diff --git a/files/ja/web/javascript/reference/global_objects/symbol/search/index.md b/files/ja/web/javascript/reference/global_objects/symbol/search/index.md index c82c629e382828..d90176bf8f4386 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/search/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/search/index.md @@ -25,7 +25,7 @@ class caseInsensitiveSearch { } } -console.log('foobar'.search(new caseInsensitiveSearch('BaR'))); +console.log("foobar".search(new caseInsensitiveSearch("BaR"))); // expected output: 3 ``` diff --git a/files/ja/web/javascript/reference/global_objects/symbol/species/index.md b/files/ja/web/javascript/reference/global_objects/symbol/species/index.md index 62037fec98c67a..9b3f8c2f14b4fc 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/species/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/species/index.md @@ -24,13 +24,15 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/species ```js class MyArray extends Array { // Overwrite species to the parent Array constructor - static get [Symbol.species]() { return Array; } + static get [Symbol.species]() { + return Array; + } } -let a = new MyArray(1,2,3); -let mapped = a.map(x => x * x); +let a = new MyArray(1, 2, 3); +let mapped = a.map((x) => x * x); console.log(mapped instanceof MyArray); // false -console.log(mapped instanceof Array); // true +console.log(mapped instanceof Array); // true ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/split/index.md b/files/ja/web/javascript/reference/global_objects/symbol/split/index.md index 36627419659768..e7704ca1ae482a 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/split/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/split/index.md @@ -18,12 +18,12 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/split ```js class ReverseSplit { [Symbol.split](string) { - const array = string.split(' '); + const array = string.split(" "); return array.reverse(); } } -console.log('Another one bites the dust'.split(new ReverseSplit())); +console.log("Another one bites the dust".split(new ReverseSplit())); // expected output: [ "dust", "the", "bites", "one", "Another" ] ``` diff --git a/files/ja/web/javascript/reference/global_objects/symbol/symbol/index.md b/files/ja/web/javascript/reference/global_objects/symbol/symbol/index.md index d29125111c1efc..3418657cf14e7f 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/symbol/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/symbol/index.md @@ -27,15 +27,15 @@ Symbol([description]) 新しいプリミティブであるシンボルを生成するには、解説にあるように `Symbol()` を任意の文字列とともに書きます。 ```js -let sym1 = Symbol() -let sym2 = Symbol('foo') -let sym3 = Symbol('foo') +let sym1 = Symbol(); +let sym2 = Symbol("foo"); +let sym3 = Symbol("foo"); ``` 上記のコードは 3 つの新しいシンボルを生成します。なお、 `Symbol("foo")` は `"foo"` と言う文字列を強制的に記号にするわけではないことに注意してください。毎回新しいシンボルを生成します。 ```js -Symbol('foo') === Symbol('foo') // false +Symbol("foo") === Symbol("foo"); // false ``` ### new Symbol(...) @@ -43,7 +43,7 @@ Symbol('foo') === Symbol('foo') // false 以下のように {{jsxref("Operators/new", "new")}} 演算子を伴う構文では、 {{jsxref("TypeError")}} が発生します。 ```js -let sym = new Symbol() // TypeError +let sym = new Symbol(); // TypeError ``` このため、新しいシンボル値の代わりに明示的なシンボルラッパーオブジェクトを作成することができず、プリミティブなデータ型の周りに明示的なラッパーオブジェクトを作成することは一般的に可能です (例えば、 `new Boolean`, `new String`, `new Number` です)。 @@ -51,10 +51,10 @@ let sym = new Symbol() // TypeError 本当に `Symbol` のラッパーオブジェクトを生成したい場合は、 `Object()` 関数を使用することができます。 ```js -let sym = Symbol('foo'); +let sym = Symbol("foo"); let symObj = Object(sym); -typeof sym // => "symbol" -typeof symObj // => "object" +typeof sym; // => "symbol" +typeof symObj; // => "object" ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/toprimitive/index.md b/files/ja/web/javascript/reference/global_objects/symbol/toprimitive/index.md index 433e454b820dfb..555fc633c7a0e7 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/toprimitive/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/toprimitive/index.md @@ -24,25 +24,25 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/toPrimitive ```js // Symbol.toPrimitive プロパティを持たないオブジェクト。 var obj1 = {}; -console.log(+obj1); // NaN +console.log(+obj1); // NaN console.log(`${obj1}`); // "[object Object]" -console.log(obj1 + ''); // "[object Object]" +console.log(obj1 + ""); // "[object Object]" // Symbol.toPrimitive プロパティを持つオブジェクト。 var obj2 = { [Symbol.toPrimitive](hint) { - if (hint == 'number') { + if (hint == "number") { return 10; } - if (hint == 'string') { - return 'hello'; + if (hint == "string") { + return "hello"; } return true; - } + }, }; -console.log(+obj2); // 10 -- hint は "number" +console.log(+obj2); // 10 -- hint は "number" console.log(`${obj2}`); // "hello" -- hint は "string" -console.log(obj2 + ''); // "true" -- hint は "default" +console.log(obj2 + ""); // "true" -- hint は "default" ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/tostring/index.md b/files/ja/web/javascript/reference/global_objects/symbol/tostring/index.md index ce59f57863e409..83cd1b881ad064 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/tostring/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/tostring/index.md @@ -28,7 +28,7 @@ Symbol().toString() シンボルに対しては `toString()` を呼び出すことができるため、文字列への型変換はありません。 ```js -Symbol('foo') + 'bar' // TypeError: Can't convert symbol to string +Symbol("foo") + "bar"; // TypeError: Can't convert symbol to string ``` ## 例 @@ -36,13 +36,13 @@ Symbol('foo') + 'bar' // TypeError: Can't convert symbol to string ### toString() の使用 ```js -Symbol('desc').toString() // "Symbol(desc)" +Symbol("desc").toString(); // "Symbol(desc)" // ウェルノウンシンボル -Symbol.iterator.toString() // "Symbol(Symbol.iterator) +Symbol.iterator.toString(); // "Symbol(Symbol.iterator) // グローバルシンボル -Symbol.for('foo').toString() // "Symbol(foo)" +Symbol.for("foo").toString(); // "Symbol(foo)" ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/tostringtag/index.md b/files/ja/web/javascript/reference/global_objects/symbol/tostringtag/index.md index 6acb86a5de716f..9a4752082d86d4 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/tostringtag/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/tostringtag/index.md @@ -14,19 +14,19 @@ slug: Web/JavaScript/Reference/Global_Objects/Symbol/toStringTag ### 既定のタグ ```js -Object.prototype.toString.call('foo'); // "[object String]" -Object.prototype.toString.call([1, 2]); // "[object Array]" -Object.prototype.toString.call(3); // "[object Number]" -Object.prototype.toString.call(true); // "[object Boolean]" +Object.prototype.toString.call("foo"); // "[object String]" +Object.prototype.toString.call([1, 2]); // "[object Array]" +Object.prototype.toString.call(3); // "[object Number]" +Object.prototype.toString.call(true); // "[object Boolean]" Object.prototype.toString.call(undefined); // "[object Undefined]" -Object.prototype.toString.call(null); // "[object Null]" +Object.prototype.toString.call(null); // "[object Null]" // ... and more ``` ### 組込み toStringTag シンボル ```js -Object.prototype.toString.call(new Map()); // "[object Map]" +Object.prototype.toString.call(new Map()); // "[object Map]" Object.prototype.toString.call(function* () {}); // "[object GeneratorFunction]" Object.prototype.toString.call(Promise.resolve()); // "[object Promise]" // ... and more @@ -49,7 +49,7 @@ Object.prototype.toString.call(new ValidatorClass()); // "[object Object]" ```js class ValidatorClass { get [Symbol.toStringTag]() { - return 'Validator'; + return "Validator"; } } @@ -61,9 +61,9 @@ Object.prototype.toString.call(new ValidatorClass()); // "[object Validator]" [WebIDL の仕様変更](https://github.com/whatwg/webidl/pull/357)が 2020 年半ばに行われた関係で、ブラウザーはすべての DOM プロトタイプオブジェクトに `Symbol.toStringTag` プロパティを追加するようになりました。例えば、{{domxref("HTMLButtonElement")}} の `Symbol.toStringTag` プロパティにアクセスするには次のようにします。 ```js -let test = document.createElement('button'); +let test = document.createElement("button"); test.toString(); // Returns [object HTMLButtonElement] -test[Symbol.toStringTag]; // Returns HTMLButtonElement +test[Symbol.toStringTag]; // Returns HTMLButtonElement ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/symbol/unscopables/index.md b/files/ja/web/javascript/reference/global_objects/symbol/unscopables/index.md index cfe6d15e997d1a..4258b937f29362 100644 --- a/files/ja/web/javascript/reference/global_objects/symbol/unscopables/index.md +++ b/files/ja/web/javascript/reference/global_objects/symbol/unscopables/index.md @@ -27,7 +27,7 @@ The `@@unscopables` シンボル (`Symbol.unscopables`) は、 [`with`](/ja/docs var keys = []; with (Array.prototype) { - keys.push('something'); + keys.push("something"); } Object.keys(Array.prototype[Symbol.unscopables]); @@ -42,12 +42,12 @@ Object.keys(Array.prototype[Symbol.unscopables]); ```js var obj = { foo: 1, - bar: 2 + bar: 2, }; obj[Symbol.unscopables] = { foo: false, - bar: true + bar: true, }; with (obj) { diff --git a/files/ja/web/javascript/reference/global_objects/syntaxerror/index.md b/files/ja/web/javascript/reference/global_objects/syntaxerror/index.md index ade112a1d80aac..d0f7c8ba3826a4 100644 --- a/files/ja/web/javascript/reference/global_objects/syntaxerror/index.md +++ b/files/ja/web/javascript/reference/global_objects/syntaxerror/index.md @@ -33,7 +33,7 @@ slug: Web/JavaScript/Reference/Global_Objects/SyntaxError ```js try { - eval('hoo bar'); + eval("hoo bar"); } catch (e) { console.error(e instanceof SyntaxError); console.error(e.message); @@ -49,15 +49,15 @@ try { ```js try { - throw new SyntaxError('Hello', 'someFile.js', 10); + throw new SyntaxError("Hello", "someFile.js", 10); } catch (e) { console.error(e instanceof SyntaxError); // true - console.error(e.message); // Hello - console.error(e.name); // SyntaxError - console.error(e.fileName); // someFile.js - console.error(e.lineNumber); // 10 - console.error(e.columnNumber); // 0 - console.error(e.stack); // @debugger eval code:3:9 + console.error(e.message); // Hello + console.error(e.name); // SyntaxError + console.error(e.fileName); // someFile.js + console.error(e.lineNumber); // 10 + console.error(e.columnNumber); // 0 + console.error(e.stack); // @debugger eval code:3:9 } ``` diff --git a/files/ja/web/javascript/reference/global_objects/syntaxerror/syntaxerror/index.md b/files/ja/web/javascript/reference/global_objects/syntaxerror/syntaxerror/index.md index c35305a829d2ef..e96892356facee 100644 --- a/files/ja/web/javascript/reference/global_objects/syntaxerror/syntaxerror/index.md +++ b/files/ja/web/javascript/reference/global_objects/syntaxerror/syntaxerror/index.md @@ -28,7 +28,7 @@ new SyntaxError([message[, fileName[, lineNumber]]]) ```js try { - eval('hoo bar'); + eval("hoo bar"); } catch (e) { console.error(e instanceof SyntaxError); console.error(e.message); @@ -44,15 +44,15 @@ try { ```js try { - throw new SyntaxError('Hello', 'someFile.js', 10); + throw new SyntaxError("Hello", "someFile.js", 10); } catch (e) { console.error(e instanceof SyntaxError); // true - console.error(e.message); // Hello - console.error(e.name); // SyntaxError - console.error(e.fileName); // someFile.js - console.error(e.lineNumber); // 10 - console.error(e.columnNumber); // 0 - console.error(e.stack); // @debugger eval code:3:9 + console.error(e.message); // Hello + console.error(e.name); // SyntaxError + console.error(e.fileName); // someFile.js + console.error(e.lineNumber); // 10 + console.error(e.columnNumber); // 0 + console.error(e.stack); // @debugger eval code:3:9 } ``` diff --git a/files/ja/web/javascript/reference/global_objects/typedarray/index.md b/files/ja/web/javascript/reference/global_objects/typedarray/index.md index fdd6b440b9a255..397fd04725db5c 100644 --- a/files/ja/web/javascript/reference/global_objects/typedarray/index.md +++ b/files/ja/web/javascript/reference/global_objects/typedarray/index.md @@ -19,19 +19,19 @@ l10n: ### TypedArray オブジェクト -| 型 | 値の範囲 | サイズ (バイト数) | 説明 | Web IDL 型 | 同等の C 型 | -| ---------------------------------------- | ------------------------------- | ----------------- | ----------------------------------------------------------------------------- | --------------------- | ------------------------------- | -| {{jsxref("Int8Array")}} | -128 から 127 | 1 | 8 ビット長、2 の補数方式の符号付き整数値 | `byte` | `int8_t` | -| {{jsxref("Uint8Array")}} | 0 から 255 | 1 | 8 ビット長、符号なし整数値 | `octet` | `uint8_t` | -| {{jsxref("Uint8ClampedArray")}} | 0 から 255 | 1 | 8 ビット長、符号なし整数値 (切り詰め) | `octet` | `uint8_t` | -| {{jsxref("Int16Array")}} | -32768 から 32767 | 2 | 16 ビット長、2 の補数方式の符号付き整数値 | `short` | `int16_t` | -| {{jsxref("Uint16Array")}} | 0 から 65535 | 2 | 16 ビット長、符号なし整数値 | `unsigned short` | `uint16_t` | -| {{jsxref("Int32Array")}} | -2147483648 から 2147483647 | 4 | 32 ビット長、2 の補数方式の符号付き整数値 | `long` | `int32_t` | -| {{jsxref("Uint32Array")}} | 0 から 4294967295 | 4 | 32 ビット長、符号なし整数値 | `unsigned long` | `uint32_t` | -| {{jsxref("Float32Array")}} | `-3.4E38` から `3.4E38` および `1.2E-38` (最小の正の数) | 4 | 32-bit IEEE floating point number (7 significant digits e.g., `1.234567`)`1.2`×`10-38 から 3.4`×`1038` | 4 | 32 ビット長 IEEE 方式浮動小数点数 (有効桁数 7 桁、例えば `1.234567`) | `unrestricted float` | `float` | -| {{jsxref("Float64Array")}} | `-1.8E308` から `1.8E308` および `5E-324` (最小の正の数) | 8 | 64 ビット長 IEEE 方式浮動小数点数 (有効桁数 16 桁、例えば`1.23456789012345`) | `unrestricted double` | `double` | -| {{jsxref("BigInt64Array")}} | -263 to 263 - 1 | 8 | 64 ビット長、2 の補数方式の符号付き整数値 | `bigint` | `int64_t (signed long long)` | -| {{jsxref("BigUint64Array")}} | 0 to 264 - 1 | 8 | 64 ビット長、符号なし整数値 | `bigint` | `uint64_t (unsigned long long)` | +| 型 | 値の範囲 | サイズ (バイト数) | 説明 | Web IDL 型 | 同等の C 型 | +| ------------------------------- | ---------------------------------------------------------- | ----------------- | ------------------------------------------------------------------------------------------------------ | --------------------- | -------------------------------------------------------------------- | -------------------- | ------- | +| {{jsxref("Int8Array")}} | -128 から 127 | 1 | 8 ビット長、2 の補数方式の符号付き整数値 | `byte` | `int8_t` | +| {{jsxref("Uint8Array")}} | 0 から 255 | 1 | 8 ビット長、符号なし整数値 | `octet` | `uint8_t` | +| {{jsxref("Uint8ClampedArray")}} | 0 から 255 | 1 | 8 ビット長、符号なし整数値 (切り詰め) | `octet` | `uint8_t` | +| {{jsxref("Int16Array")}} | -32768 から 32767 | 2 | 16 ビット長、2 の補数方式の符号付き整数値 | `short` | `int16_t` | +| {{jsxref("Uint16Array")}} | 0 から 65535 | 2 | 16 ビット長、符号なし整数値 | `unsigned short` | `uint16_t` | +| {{jsxref("Int32Array")}} | -2147483648 から 2147483647 | 4 | 32 ビット長、2 の補数方式の符号付き整数値 | `long` | `int32_t` | +| {{jsxref("Uint32Array")}} | 0 から 4294967295 | 4 | 32 ビット長、符号なし整数値 | `unsigned long` | `uint32_t` | +| {{jsxref("Float32Array")}} | `-3.4E38` から `3.4E38` および `1.2E-38` (最小の正の数) | 4 | 32-bit IEEE floating point number (7 significant digits e.g., `1.234567`)`1.2`×`10-38 から 3.4`×`1038` | 4 | 32 ビット長 IEEE 方式浮動小数点数 (有効桁数 7 桁、例えば `1.234567`) | `unrestricted float` | `float` | +| {{jsxref("Float64Array")}} | `-1.8E308` から `1.8E308` および `5E-324` (最小の正の数) | 8 | 64 ビット長 IEEE 方式浮動小数点数 (有効桁数 16 桁、例えば`1.23456789012345`) | `unrestricted double` | `double` | +| {{jsxref("BigInt64Array")}} | -263 to 263 - 1 | 8 | 64 ビット長、2 の補数方式の符号付き整数値 | `bigint` | `int64_t (signed long long)` | +| {{jsxref("BigUint64Array")}} | 0 to 264 - 1 | 8 | 64 ビット長、符号なし整数値 | `bigint` | `uint64_t (unsigned long long)` | ### サイズ変更可能なバッファー表示時の動作について @@ -60,7 +60,7 @@ const float32 = new Float32Array(buffer, 0, 2); console.log(float32.byteLength); // 8 console.log(float32.length); // 2 -console.log(float32[0]) // 0(初期値) +console.log(float32[0]); // 0(初期値) buffer.resize(12); diff --git a/files/ja/web/javascript/reference/global_objects/typedarray/slice/index.md b/files/ja/web/javascript/reference/global_objects/typedarray/slice/index.md index c2addb0486d4ce..f53160e1a04a54 100644 --- a/files/ja/web/javascript/reference/global_objects/typedarray/slice/index.md +++ b/files/ja/web/javascript/reference/global_objects/typedarray/slice/index.md @@ -29,6 +29,7 @@ slice(start, end) `slice(-2)` は配列の最後から 2 番目の要素と最後の要素を抽出します。 `start` を省略した場合、 `slice` は `0` 番目の要素から開始します。 + - `end` {{optional_inline}} - : 抽出範囲の末尾の _直前_ の位置を示す 0 から始まる添字です。 `slice` は diff --git a/files/ja/web/javascript/reference/global_objects/typeerror/index.md b/files/ja/web/javascript/reference/global_objects/typeerror/index.md index 7b9d26763a7d07..d4411d30e3a4ef 100644 --- a/files/ja/web/javascript/reference/global_objects/typeerror/index.md +++ b/files/ja/web/javascript/reference/global_objects/typeerror/index.md @@ -39,15 +39,15 @@ slug: Web/JavaScript/Reference/Global_Objects/TypeError ```js try { - null.f() + null.f(); } catch (e) { - console.log(e instanceof TypeError) // true - console.log(e.message) // "null has no properties" - console.log(e.name) // "TypeError" - console.log(e.fileName) // "Scratchpad/1" - console.log(e.lineNumber) // 2 - console.log(e.columnNumber) // 2 - console.log(e.stack) // "@Scratchpad/2:2:3\n" + console.log(e instanceof TypeError); // true + console.log(e.message); // "null has no properties" + console.log(e.name); // "TypeError" + console.log(e.fileName); // "Scratchpad/1" + console.log(e.lineNumber); // 2 + console.log(e.columnNumber); // 2 + console.log(e.stack); // "@Scratchpad/2:2:3\n" } ``` @@ -55,15 +55,15 @@ try { ```js try { - throw new TypeError('Hello', "someFile.js", 10) + throw new TypeError("Hello", "someFile.js", 10); } catch (e) { - console.log(e instanceof TypeError) // true - console.log(e.message) // "Hello" - console.log(e.name) // "TypeError" - console.log(e.fileName) // "someFile.js" - console.log(e.lineNumber) // 10 - console.log(e.columnNumber) // 0 - console.log(e.stack) // "@Scratchpad/2:2:9\n" + console.log(e instanceof TypeError); // true + console.log(e.message); // "Hello" + console.log(e.name); // "TypeError" + console.log(e.fileName); // "someFile.js" + console.log(e.lineNumber); // 10 + console.log(e.columnNumber); // 0 + console.log(e.stack); // "@Scratchpad/2:2:9\n" } ``` diff --git a/files/ja/web/javascript/reference/global_objects/typeerror/typeerror/index.md b/files/ja/web/javascript/reference/global_objects/typeerror/typeerror/index.md index 7be48b91938af7..beedefee903e56 100644 --- a/files/ja/web/javascript/reference/global_objects/typeerror/typeerror/index.md +++ b/files/ja/web/javascript/reference/global_objects/typeerror/typeerror/index.md @@ -28,15 +28,15 @@ new TypeError([message[, fileName[, lineNumber]]]) ```js try { - null.f() + null.f(); } catch (e) { - console.log(e instanceof TypeError) // true - console.log(e.message) // "null has no properties" - console.log(e.name) // "TypeError" - console.log(e.fileName) // "Scratchpad/1" - console.log(e.lineNumber) // 2 - console.log(e.columnNumber) // 2 - console.log(e.stack) // "@Scratchpad/2:2:3\n" + console.log(e instanceof TypeError); // true + console.log(e.message); // "null has no properties" + console.log(e.name); // "TypeError" + console.log(e.fileName); // "Scratchpad/1" + console.log(e.lineNumber); // 2 + console.log(e.columnNumber); // 2 + console.log(e.stack); // "@Scratchpad/2:2:3\n" } ``` @@ -44,15 +44,15 @@ try { ```js try { - throw new TypeError('Hello', "someFile.js", 10) + throw new TypeError("Hello", "someFile.js", 10); } catch (e) { - console.log(e instanceof TypeError) // true - console.log(e.message) // "Hello" - console.log(e.name) // "TypeError" - console.log(e.fileName) // "someFile.js" - console.log(e.lineNumber) // 10 - console.log(e.columnNumber) // 0 - console.log(e.stack) // "@Scratchpad/2:2:9\n" + console.log(e instanceof TypeError); // true + console.log(e.message); // "Hello" + console.log(e.name); // "TypeError" + console.log(e.fileName); // "someFile.js" + console.log(e.lineNumber); // 10 + console.log(e.columnNumber); // 0 + console.log(e.stack); // "@Scratchpad/2:2:9\n" } ``` diff --git a/files/ja/web/javascript/reference/global_objects/uint16array/index.md b/files/ja/web/javascript/reference/global_objects/uint16array/index.md index afe25990b54953..576cf59996e1c6 100644 --- a/files/ja/web/javascript/reference/global_objects/uint16array/index.md +++ b/files/ja/web/javascript/reference/global_objects/uint16array/index.md @@ -105,7 +105,7 @@ console.log(uint16.length); // 2 console.log(uint16.BYTES_PER_ELEMENT); // 2 // 配列から -var arr = new Uint16Array([21,31]); +var arr = new Uint16Array([21, 31]); console.log(arr[1]); // 31 // From another TypedArray @@ -118,7 +118,9 @@ var buffer = new ArrayBuffer(8); var z = new Uint16Array(buffer, 0, 4); // 反復可能オブジェクトから -var iterable = function*(){ yield* [1,2,3]; }(); +var iterable = (function* () { + yield* [1, 2, 3]; +})(); var uint16 = new Uint16Array(iterable); // Uint16Array[1, 2, 3] ``` diff --git a/files/ja/web/javascript/reference/global_objects/uint16array/uint16array/index.md b/files/ja/web/javascript/reference/global_objects/uint16array/uint16array/index.md index 8c5a7880540dfb..7daea61fa24686 100644 --- a/files/ja/web/javascript/reference/global_objects/uint16array/uint16array/index.md +++ b/files/ja/web/javascript/reference/global_objects/uint16array/uint16array/index.md @@ -57,7 +57,7 @@ console.log(uint16.length); // 2 console.log(uint16.BYTES_PER_ELEMENT); // 2 // From an array -var arr = new Uint16Array([21,31]); +var arr = new Uint16Array([21, 31]); console.log(arr[1]); // 31 // From another TypedArray @@ -70,7 +70,9 @@ var buffer = new ArrayBuffer(8); var z = new Uint16Array(buffer, 0, 4); // From an iterable -var iterable = function*(){ yield* [1,2,3]; }(); +var iterable = (function* () { + yield* [1, 2, 3]; +})(); var uint16 = new Uint16Array(iterable); // Uint16Array[1, 2, 3] ``` diff --git a/files/ja/web/javascript/reference/global_objects/uint32array/index.md b/files/ja/web/javascript/reference/global_objects/uint32array/index.md index c8258a0bf8b43e..61fd3baca5a16b 100644 --- a/files/ja/web/javascript/reference/global_objects/uint32array/index.md +++ b/files/ja/web/javascript/reference/global_objects/uint32array/index.md @@ -105,7 +105,7 @@ console.log(uint32.length); // 2 console.log(uint32.BYTES_PER_ELEMENT); // 4 // 配列から -var arr = new Uint32Array([21,31]); +var arr = new Uint32Array([21, 31]); console.log(arr[1]); // 31 // From another TypedArray @@ -118,7 +118,9 @@ var buffer = new ArrayBuffer(16); var z = new Uint32Array(buffer, 0, 4); // 反復可能オブジェクトから -var iterable = function*(){ yield* [1,2,3]; }(); +var iterable = (function* () { + yield* [1, 2, 3]; +})(); var uint32 = new Uint32Array(iterable); // Uint32Array[1, 2, 3] ``` diff --git a/files/ja/web/javascript/reference/global_objects/uint32array/uint32array/index.md b/files/ja/web/javascript/reference/global_objects/uint32array/uint32array/index.md index 95078edeb5c7d2..9ee1ad0170b4ae 100644 --- a/files/ja/web/javascript/reference/global_objects/uint32array/uint32array/index.md +++ b/files/ja/web/javascript/reference/global_objects/uint32array/uint32array/index.md @@ -41,7 +41,7 @@ console.log(uint32.length); // 2 console.log(uint32.BYTES_PER_ELEMENT); // 4 // 配列から -var arr = new Uint32Array([21,31]); +var arr = new Uint32Array([21, 31]); console.log(arr[1]); // 31 // 他の型付き配列から @@ -54,7 +54,9 @@ var buffer = new ArrayBuffer(16); var z = new Uint32Array(buffer, 0, 4); // 反復可能オブジェクトから -var iterable = function*(){ yield* [1,2,3]; }(); +var iterable = (function* () { + yield* [1, 2, 3]; +})(); var uint32 = new Uint32Array(iterable); // Uint32Array[1, 2, 3] ``` diff --git a/files/ja/web/javascript/reference/global_objects/uint8array/index.md b/files/ja/web/javascript/reference/global_objects/uint8array/index.md index 0cf011743d5820..5e171b5a127d4a 100644 --- a/files/ja/web/javascript/reference/global_objects/uint8array/index.md +++ b/files/ja/web/javascript/reference/global_objects/uint8array/index.md @@ -105,7 +105,7 @@ console.log(uint8.length); // 2 console.log(uint8.BYTES_PER_ELEMENT); // 1 // 配列から -var arr = new Uint8Array([21,31]); +var arr = new Uint8Array([21, 31]); console.log(arr[1]); // 31 // From another TypedArray @@ -118,7 +118,9 @@ var buffer = new ArrayBuffer(8); var z = new Uint8Array(buffer, 1, 4); // 反復可能オブジェクトから -var iterable = function*(){ yield* [1,2,3]; }(); +var iterable = (function* () { + yield* [1, 2, 3]; +})(); var uint8 = new Uint8Array(iterable); // Uint8Array[1, 2, 3] ``` diff --git a/files/ja/web/javascript/reference/global_objects/uint8array/uint8array/index.md b/files/ja/web/javascript/reference/global_objects/uint8array/uint8array/index.md index 43a5d2ee201eb0..6c1266f25259ea 100644 --- a/files/ja/web/javascript/reference/global_objects/uint8array/uint8array/index.md +++ b/files/ja/web/javascript/reference/global_objects/uint8array/uint8array/index.md @@ -41,7 +41,7 @@ console.log(uint8.length); // 2 console.log(uint8.BYTES_PER_ELEMENT); // 1 // 配列から -var arr = new Uint8Array([21,31]); +var arr = new Uint8Array([21, 31]); console.log(arr[1]); // 31 // 他の型付き配列から @@ -54,7 +54,9 @@ var buffer = new ArrayBuffer(8); var z = new Uint8Array(buffer, 1, 4); // 反復可能オブジェクトから -var iterable = function*(){ yield* [1,2,3]; }(); +var iterable = (function* () { + yield* [1, 2, 3]; +})(); var uint8 = new Uint8Array(iterable); // Uint8Array[1, 2, 3] ``` diff --git a/files/ja/web/javascript/reference/global_objects/uint8clampedarray/index.md b/files/ja/web/javascript/reference/global_objects/uint8clampedarray/index.md index 040c97c4409fbe..e152071bf50c4e 100644 --- a/files/ja/web/javascript/reference/global_objects/uint8clampedarray/index.md +++ b/files/ja/web/javascript/reference/global_objects/uint8clampedarray/index.md @@ -107,7 +107,7 @@ console.log(uintc8.length); // 2 console.log(uintc8.BYTES_PER_ELEMENT); // 1 // 配列から -var arr = new Uint8ClampedArray([21,31]); +var arr = new Uint8ClampedArray([21, 31]); console.log(arr[1]); // 31 // From another TypedArray @@ -120,7 +120,9 @@ var buffer = new ArrayBuffer(8); var z = new Uint8ClampedArray(buffer, 1, 4); // 反復可能オブジェクトから -var iterable = function*(){ yield* [1,2,3]; }(); +var iterable = (function* () { + yield* [1, 2, 3]; +})(); var uintc8 = new Uint8ClampedArray(iterable); // Uint8ClampedArray[1, 2, 3] ``` diff --git a/files/ja/web/javascript/reference/global_objects/uint8clampedarray/uint8clampedarray/index.md b/files/ja/web/javascript/reference/global_objects/uint8clampedarray/uint8clampedarray/index.md index 708a5221a049d7..6e9949545004c9 100644 --- a/files/ja/web/javascript/reference/global_objects/uint8clampedarray/uint8clampedarray/index.md +++ b/files/ja/web/javascript/reference/global_objects/uint8clampedarray/uint8clampedarray/index.md @@ -43,7 +43,7 @@ console.log(uintc8.length); // 2 console.log(uintc8.BYTES_PER_ELEMENT); // 1 // 配列から -var arr = new Uint8ClampedArray([21,31]); +var arr = new Uint8ClampedArray([21, 31]); console.log(arr[1]); // 31 // 他の型付き配列から @@ -56,7 +56,9 @@ var buffer = new ArrayBuffer(8); var z = new Uint8ClampedArray(buffer, 1, 4); // 反復可能オブジェクトから -var iterable = function*(){ yield* [1,2,3]; }(); +var iterable = (function* () { + yield* [1, 2, 3]; +})(); var uintc8 = new Uint8ClampedArray(iterable); // Uint8ClampedArray[1, 2, 3] ``` diff --git a/files/ja/web/javascript/reference/global_objects/undefined/index.md b/files/ja/web/javascript/reference/global_objects/undefined/index.md index 304e38c925f981..512fa89b7842a5 100644 --- a/files/ja/web/javascript/reference/global_objects/undefined/index.md +++ b/files/ja/web/javascript/reference/global_objects/undefined/index.md @@ -14,7 +14,7 @@ slug: Web/JavaScript/Reference/Global_Objects/undefined ## 構文 ```js -undefined +undefined; ``` ## 解説 @@ -31,15 +31,15 @@ undefined > //こんなことはしないこと! > > // "foo string" をログ出力する -> (function() { -> var undefined = 'foo'; +> (function () { +> var undefined = "foo"; > console.log(undefined, typeof undefined); > })(); > > // "foo string" をログ出力する -> (function(undefined) { +> (function (undefined) { > console.log(undefined, typeof undefined); -> })('foo'); +> })("foo"); > ``` ## 例 @@ -52,8 +52,7 @@ undefined var x; if (x === undefined) { // ここの文は実行される -} -else { +} else { // ここの文は実行されない } ``` @@ -68,8 +67,8 @@ else { ```js var x; -if (typeof x === 'undefined') { - // ここの文は実行される +if (typeof x === "undefined") { + // ここの文は実行される } ``` @@ -77,12 +76,13 @@ if (typeof x === 'undefined') { ```js // 直前まで x は宣言されていない -if (typeof x === 'undefined') { // エラーなしで true と評価される - // ここの文は実行される +if (typeof x === "undefined") { + // エラーなしで true と評価される + // ここの文は実行される } -if (x === undefined) { // ReferenceError が発生 - +if (x === undefined) { + // ReferenceError が発生 } ``` @@ -91,7 +91,7 @@ if (x === undefined) { // ReferenceError が発生 グローバルスコープは{{jsxref("globalThis", "グローバルオブジェクト", "", 1)}}に結びつけられているので、グローバルコンテキストに変数が存在するかどうかのチェックは、グローバルオブジェクトにプロパティが存在することを、 {{jsxref("Operators/in", "in")}} 演算子を使用してチェックすることで行うことができます。 ```js -if ('x' in window) { +if ("x" in window) { // x がグローバルに定義されている場合のみ、ここの文を実行 } ``` diff --git a/files/ja/web/javascript/reference/global_objects/unescape/index.md b/files/ja/web/javascript/reference/global_objects/unescape/index.md index b85fa4fe05aad8..c7e57efc6c72c9 100644 --- a/files/ja/web/javascript/reference/global_objects/unescape/index.md +++ b/files/ja/web/javascript/reference/global_objects/unescape/index.md @@ -19,7 +19,7 @@ l10n: ## 構文 ```js -unescape(str) +unescape(str); ``` ### 引数 @@ -40,9 +40,9 @@ unescape(str) ### unescape の使用 ```js -unescape('abc123'); // "abc123" -unescape('%E4%F6%FC'); // "äöü" -unescape('%u0107'); // "ć" +unescape("abc123"); // "abc123" +unescape("%E4%F6%FC"); // "äöü" +unescape("%u0107"); // "ć" ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/urierror/index.md b/files/ja/web/javascript/reference/global_objects/urierror/index.md index b8dab57f3f3ef3..9c96261906b6d3 100644 --- a/files/ja/web/javascript/reference/global_objects/urierror/index.md +++ b/files/ja/web/javascript/reference/global_objects/urierror/index.md @@ -33,15 +33,15 @@ slug: Web/JavaScript/Reference/Global_Objects/URIError ```js try { - decodeURIComponent('%') + decodeURIComponent("%"); } catch (e) { - console.log(e instanceof URIError) // true - console.log(e.message) // "malformed URI sequence" - console.log(e.name) // "URIError" - console.log(e.fileName) // "Scratchpad/1" - console.log(e.lineNumber) // 2 - console.log(e.columnNumber) // 2 - console.log(e.stack) // "@Scratchpad/2:2:3\n" + console.log(e instanceof URIError); // true + console.log(e.message); // "malformed URI sequence" + console.log(e.name); // "URIError" + console.log(e.fileName); // "Scratchpad/1" + console.log(e.lineNumber); // 2 + console.log(e.columnNumber); // 2 + console.log(e.stack); // "@Scratchpad/2:2:3\n" } ``` @@ -49,15 +49,15 @@ try { ```js try { - throw new URIError('Hello', 'someFile.js', 10) + throw new URIError("Hello", "someFile.js", 10); } catch (e) { - console.log(e instanceof URIError) // true - console.log(e.message) // "Hello" - console.log(e.name) // "URIError" - console.log(e.fileName) // "someFile.js" - console.log(e.lineNumber) // 10 - console.log(e.columnNumber) // 0 - console.log(e.stack) // "@Scratchpad/2:2:9\n" + console.log(e instanceof URIError); // true + console.log(e.message); // "Hello" + console.log(e.name); // "URIError" + console.log(e.fileName); // "someFile.js" + console.log(e.lineNumber); // 10 + console.log(e.columnNumber); // 0 + console.log(e.stack); // "@Scratchpad/2:2:9\n" } ``` diff --git a/files/ja/web/javascript/reference/global_objects/urierror/urierror/index.md b/files/ja/web/javascript/reference/global_objects/urierror/urierror/index.md index 8e7c1a1e0914d7..a971d22801e778 100644 --- a/files/ja/web/javascript/reference/global_objects/urierror/urierror/index.md +++ b/files/ja/web/javascript/reference/global_objects/urierror/urierror/index.md @@ -28,15 +28,15 @@ new URIError([message[, fileName[, lineNumber]]]) ```js try { - decodeURIComponent('%') + decodeURIComponent("%"); } catch (e) { - console.log(e instanceof URIError) // true - console.log(e.message) // "malformed URI sequence" - console.log(e.name) // "URIError" - console.log(e.fileName) // "Scratchpad/1" - console.log(e.lineNumber) // 2 - console.log(e.columnNumber) // 2 - console.log(e.stack) // "@Scratchpad/2:2:3\n" + console.log(e instanceof URIError); // true + console.log(e.message); // "malformed URI sequence" + console.log(e.name); // "URIError" + console.log(e.fileName); // "Scratchpad/1" + console.log(e.lineNumber); // 2 + console.log(e.columnNumber); // 2 + console.log(e.stack); // "@Scratchpad/2:2:3\n" } ``` @@ -44,15 +44,15 @@ try { ```js try { - throw new URIError('Hello', 'someFile.js', 10) + throw new URIError("Hello", "someFile.js", 10); } catch (e) { - console.log(e instanceof URIError) // true - console.log(e.message) // "Hello" - console.log(e.name) // "URIError" - console.log(e.fileName) // "someFile.js" - console.log(e.lineNumber) // 10 - console.log(e.columnNumber) // 0 - console.log(e.stack) // "@Scratchpad/2:2:9\n" + console.log(e instanceof URIError); // true + console.log(e.message); // "Hello" + console.log(e.name); // "URIError" + console.log(e.fileName); // "someFile.js" + console.log(e.lineNumber); // 10 + console.log(e.columnNumber); // 0 + console.log(e.stack); // "@Scratchpad/2:2:9\n" } ``` diff --git a/files/ja/web/javascript/reference/global_objects/weakmap/delete/index.md b/files/ja/web/javascript/reference/global_objects/weakmap/delete/index.md index 895b9fd47f0f9f..dd3815c749c761 100644 --- a/files/ja/web/javascript/reference/global_objects/weakmap/delete/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakmap/delete/index.md @@ -30,11 +30,11 @@ wm.delete(key); ```js var wm = new WeakMap(); -wm.set(window, 'foo'); +wm.set(window, "foo"); wm.delete(window); // true を返す。削除に成功。 -wm.has(window); // false を返す。 window はもう WeakMap に存在しない。 +wm.has(window); // false を返す。 window はもう WeakMap に存在しない。 ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/weakmap/get/index.md b/files/ja/web/javascript/reference/global_objects/weakmap/get/index.md index 58c6d53c68490c..fa0fc038c4fbb1 100644 --- a/files/ja/web/javascript/reference/global_objects/weakmap/get/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakmap/get/index.md @@ -30,10 +30,10 @@ wm.get(key); ```js var wm = new WeakMap(); -wm.set(window, 'foo'); +wm.set(window, "foo"); wm.get(window); // "foo" を返す -wm.get('baz'); // undefined を返す +wm.get("baz"); // undefined を返す ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/weakmap/has/index.md b/files/ja/web/javascript/reference/global_objects/weakmap/has/index.md index b866a365363bdf..f4109cabc81b84 100644 --- a/files/ja/web/javascript/reference/global_objects/weakmap/has/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakmap/has/index.md @@ -31,10 +31,10 @@ ws.has(key); ```js var wm = new WeakMap(); -wm.set(window, 'foo'); +wm.set(window, "foo"); wm.has(window); // true を返す -wm.has('baz'); // false を返す +wm.has("baz"); // false を返す ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/weakmap/index.md b/files/ja/web/javascript/reference/global_objects/weakmap/index.md index 312138783213e5..256a9d258940a6 100644 --- a/files/ja/web/javascript/reference/global_objects/weakmap/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakmap/index.md @@ -48,14 +48,14 @@ map API は、4 つの API メソッドから共有される 2 つの配列 (1 ```js const wm1 = new WeakMap(), - wm2 = new WeakMap(), - wm3 = new WeakMap(); + wm2 = new WeakMap(), + wm3 = new WeakMap(); const o1 = {}, - o2 = function() {}, - o3 = window; + o2 = function () {}, + o3 = window; wm1.set(o1, 37); -wm1.set(o2, 'azerty'); +wm1.set(o2, "azerty"); wm2.set(o1, o2); // 値は(オブジェクトまたは関数を含む)何であってもかまいません wm2.set(o3, undefined); wm2.set(wm1, wm2); // キーも値もどんなオブジェクトでもかまいません。 WeakMap であってもよいのです! diff --git a/files/ja/web/javascript/reference/global_objects/weakmap/set/index.md b/files/ja/web/javascript/reference/global_objects/weakmap/set/index.md index c3898157a14c6e..b2324bc14388e2 100644 --- a/files/ja/web/javascript/reference/global_objects/weakmap/set/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakmap/set/index.md @@ -35,10 +35,10 @@ var wm = new WeakMap(); var obj = {}; // Add new elements to the WeakMap -wm.set(obj, 'foo').set(window, 'bar'); // chainable +wm.set(obj, "foo").set(window, "bar"); // chainable // Update an element in the WeakMap -wm.set(obj, 'baz'); +wm.set(obj, "baz"); ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/weakmap/weakmap/index.md b/files/ja/web/javascript/reference/global_objects/weakmap/weakmap/index.md index 57f00963dcf7b8..2f374301f4be62 100644 --- a/files/ja/web/javascript/reference/global_objects/weakmap/weakmap/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakmap/weakmap/index.md @@ -26,14 +26,14 @@ new WeakMap([iterable]) ```js const wm1 = new WeakMap(), - wm2 = new WeakMap(), - wm3 = new WeakMap(); + wm2 = new WeakMap(), + wm3 = new WeakMap(); const o1 = {}, - o2 = function() {}, - o3 = window; + o2 = function () {}, + o3 = window; wm1.set(o1, 37); -wm1.set(o2, 'azerty'); +wm1.set(o2, "azerty"); wm2.set(o1, o2); // 値は何でもよく、オブジェクトでも関数でもよい wm2.set(o3, undefined); wm2.set(wm1, wm2); // キーと値はあらゆるオブジェクトになれる。 WeakMap も同様。 diff --git a/files/ja/web/javascript/reference/global_objects/weakref/deref/index.md b/files/ja/web/javascript/reference/global_objects/weakref/deref/index.md index ec3618291bf525..52ee1c89114f96 100644 --- a/files/ja/web/javascript/reference/global_objects/weakref/deref/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakref/deref/index.md @@ -10,7 +10,7 @@ slug: Web/JavaScript/Reference/Global_Objects/WeakRef/deref ## 構文 ```js -deref() +deref(); ``` ### 返値 diff --git a/files/ja/web/javascript/reference/global_objects/weakset/delete/index.md b/files/ja/web/javascript/reference/global_objects/weakset/delete/index.md index d198944c1810c4..db3899a11a75b6 100644 --- a/files/ja/web/javascript/reference/global_objects/weakset/delete/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakset/delete/index.md @@ -34,10 +34,10 @@ var obj = {}; ws.add(window); -ws.delete(obj); // false を返します。削除する obj が見つかりません。 +ws.delete(obj); // false を返します。削除する obj が見つかりません。 ws.delete(window); // true を返します。正常に削除されます。 -ws.has(window); // false を返します。 window はもう WeakSet の中にないからです。 +ws.has(window); // false を返します。 window はもう WeakSet の中にないからです。 ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/weakset/has/index.md b/files/ja/web/javascript/reference/global_objects/weakset/has/index.md index 4b8ee56b985640..024ec3cabd6269 100644 --- a/files/ja/web/javascript/reference/global_objects/weakset/has/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakset/has/index.md @@ -34,8 +34,8 @@ var ws = new WeakSet(); var obj = {}; ws.add(window); -mySet.has(window); // returns true -mySet.has(obj); // returns false +mySet.has(window); // returns true +mySet.has(obj); // returns false ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/global_objects/weakset/index.md b/files/ja/web/javascript/reference/global_objects/weakset/index.md index bd85166a55d23f..84be319915e936 100644 --- a/files/ja/web/javascript/reference/global_objects/weakset/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakset/index.md @@ -26,31 +26,28 @@ slug: Web/JavaScript/Reference/Global_Objects/WeakSet ```js // Execute a callback on everything stored inside an object -function execRecursively(fn, subject, _refs = null){ - if(!_refs) - _refs = new WeakSet(); +function execRecursively(fn, subject, _refs = null) { + if (!_refs) _refs = new WeakSet(); // Avoid infinite recursion - if(_refs.has(subject)) - return; + if (_refs.has(subject)) return; fn(subject); - if("object" === typeof subject){ + if ("object" === typeof subject) { _refs.add(subject); - for(let key in subject) - execRecursively(fn, subject[key], _refs); + for (let key in subject) execRecursively(fn, subject[key], _refs); } } const foo = { foo: "Foo", bar: { - bar: "Bar" - } + bar: "Bar", + }, }; foo.bar.baz = foo; // Circular reference! -execRecursively(obj => console.log(obj), foo); +execRecursively((obj) => console.log(obj), foo); ``` ここで、 `WeakSet` は最初の実行時に作成され、その後の関数呼び出しのたびに (内部の `_refs` 引数を使用して) 渡されます。 @@ -83,12 +80,12 @@ const bar = {}; ws.add(foo); ws.add(bar); -ws.has(foo); // true -ws.has(bar); // true +ws.has(foo); // true +ws.has(bar); // true ws.delete(foo); // foo を set から削除 -ws.has(foo); // false, foo は削除済み -ws.has(bar); // true, bar は残っている +ws.has(foo); // false, foo は削除済み +ws.has(bar); // true, bar は残っている ``` `foo !== bar` であることに注意してください。これらは似たオブジェクトですが、_**まったく同じオブジェクト**ではありません_。したがって、両方のオブジェクトが set に追加されます。 diff --git a/files/ja/web/javascript/reference/global_objects/weakset/weakset/index.md b/files/ja/web/javascript/reference/global_objects/weakset/weakset/index.md index bcddce73ea0a41..fb65d3b86a73e1 100644 --- a/files/ja/web/javascript/reference/global_objects/weakset/weakset/index.md +++ b/files/ja/web/javascript/reference/global_objects/weakset/weakset/index.md @@ -30,12 +30,12 @@ var bar = {}; ws.add(foo); ws.add(bar); -ws.has(foo); // true -ws.has(bar); // true +ws.has(foo); // true +ws.has(bar); // true ws.delete(foo); // foo を set から削除 -ws.has(foo); // false, foo は削除済み -ws.has(bar); // true, bar は残っている +ws.has(foo); // false, foo は削除済み +ws.has(bar); // true, bar は残っている ``` `foo !== bar` であることに注意してください。これらは似たオブジェクトですが、_**まったく同じオブジェクト**ではありません_。したがって、両方のオブジェクトが set に追加されます。 diff --git a/files/ja/web/javascript/reference/iteration_protocols/index.md b/files/ja/web/javascript/reference/iteration_protocols/index.md index 6d801a054a89d9..c1bad633e77dc6 100644 --- a/files/ja/web/javascript/reference/iteration_protocols/index.md +++ b/files/ja/web/javascript/reference/iteration_protocols/index.md @@ -29,7 +29,7 @@ l10n: ## イテレータープロトコル **イテレーター(反復子)プロトコル** (The iterator protocol) - は、値の並び(有限でも無限でも)を生成するための標準的な方法と、すべての値が生成された場合の返値を定義します。 +は、値の並び(有限でも無限でも)を生成するための標準的な方法と、すべての値が生成された場合の返値を定義します。 以下の意味で **`next()`** メソッドを実装していれば、オブジェクトはイテレーターになります。 diff --git a/files/ja/web/javascript/reference/lexical_grammar/index.md b/files/ja/web/javascript/reference/lexical_grammar/index.md index 60eb10f77190b3..3c31e77dae8a3c 100644 --- a/files/ja/web/javascript/reference/lexical_grammar/index.md +++ b/files/ja/web/javascript/reference/lexical_grammar/index.md @@ -13,11 +13,11 @@ l10n: 書式化制御文字は、視覚的表現を有していないものの、テキストの解釈を制御するために使用されます。 -| コードポイント | 名前 | 略語 | 説明 | -| ---------- | --------------------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| U+200C | Zero width non-joiner | \ | 特定の言語において、合字に接合されることを防ぐために、文字の間に配置されます。([Wikipedia](https://ja.wikipedia.org/wiki/ゼロ幅非接合子)) | -| U+200D | Zero width joiner | \ | 特定の言語において、通常は接合されない文字を、接合した形を使用して文字を表示するために文字間に配置されます。 ([Wikipedia](https://ja.wikipedia.org/wiki/ゼロ幅接合子)) | -| U+FEFF | Byte order mark | \ | 記述の先頭において、 Unicode を使用することと、そのテキストのバイト順をマークします。 ([Wikipedia](https://ja.wikipedia.org/wiki/バイト順マーク)). | +| コードポイント | 名前 | 略語 | 説明 | +| -------------- | --------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| U+200C | Zero width non-joiner | \ | 特定の言語において、合字に接合されることを防ぐために、文字の間に配置されます。([Wikipedia](https://ja.wikipedia.org/wiki/ゼロ幅非接合子)) | +| U+200D | Zero width joiner | \ | 特定の言語において、通常は接合されない文字を、接合した形を使用して文字を表示するために文字間に配置されます。 ([Wikipedia](https://ja.wikipedia.org/wiki/ゼロ幅接合子)) | +| U+FEFF | Byte order mark | \ | 記述の先頭において、 Unicode を使用することと、そのテキストのバイト順をマークします。 ([Wikipedia](https://ja.wikipedia.org/wiki/バイト順マーク)). | JavaScriptのソーステキストでは、 \ と \ は識別子部分として扱われ、 \ (テキストの先頭にない場合はゼロ幅のノーブレークスペース \ とも呼ばれます)は空白部分として扱われます。 @@ -25,15 +25,15 @@ JavaScriptのソーステキストでは、 \ と \ は識別子部 [ホワイトスペース](/ja/docs/Glossary/Whitespace)はソースのテキストの読みやすさを向上させ、トークンを互いに区別します。これらの文字は通常、コードの機能性には不要なものです。よく [Minification tools](https://en.wikipedia.org/wiki/Minification_%28programming%29) を使用して、転送する必要があるデータの量を削減するためにホワイトスペースを除去します。 -| コードポイント | 名前 | 略語 | 説明 | エスケープシーケンス | -| ---------- | ------------------------------ | ------------ | --------------------------------------------------------------------------------------------------------- | --------------- | -| U+0009 | 文字単位のタブ | \ | 水平タブ | \t | -| U+000B | 行単位のタブ | \ | 垂直タブ | \v | -| U+000C | フォームフィード | \ | 改ページの制御文字 ([Wikipedia](http://en.wikipedia.org/wiki/Page_break#Form_feed)) | \f | -| U+0020 | 空白 | \ | 通常の空白 | | -| U+00A0 | ノーブレークスペース | \ | 通常の空白だが、改行を行ってよい位置ではない | | -| U+FEFF | ゼロ幅ノーブレークスペース | \ | When not at the start of a script, the BOM marker is a normal whitespace character. | | -| Others | 他の Unicode の空白文字 | \ | ["Space_Separator" 一般カテゴリーの文字][space separator set] | | +| コードポイント | 名前 | 略語 | 説明 | エスケープシーケンス | +| -------------- | -------------------------- | --------- | ----------------------------------------------------------------------------------- | -------------------- | +| U+0009 | 文字単位のタブ | \ | 水平タブ | \t | +| U+000B | 行単位のタブ | \ | 垂直タブ | \v | +| U+000C | フォームフィード | \ | 改ページの制御文字 ([Wikipedia](http://en.wikipedia.org/wiki/Page_break#Form_feed)) | \f | +| U+0020 | 空白 | \ | 通常の空白 | | +| U+00A0 | ノーブレークスペース | \ | 通常の空白だが、改行を行ってよい位置ではない | | +| U+FEFF | ゼロ幅ノーブレークスペース | \ | When not at the start of a script, the BOM marker is a normal whitespace character. | | +| Others | 他の Unicode の空白文字 | \ | ["Space_Separator" 一般カテゴリーの文字][space separator set] | | [space separator set]: https://util.unicode.org/UnicodeJsps/list-unicodeset.jsp?a=%5Cp%7BGeneral_Category%3DSpace_Separator%7D @@ -47,12 +47,12 @@ JavaScriptのソーステキストでは、 \ と \ は識別子部 以下の Unicode コードポイントのみが ECMAScript では改行文字として扱われ、他の改行文字はホワイトスペースとして扱われます (例えば、次の行、 NEL、 U+0085 はホワイトスペースと見なされます)。 -| コードポイント | 名前 | 略語 | 説明 | エスケープシーケンス | -| ---------- | ------------------- | ------------ | ------------------------------------------------------ | --------------- | -| U+000A | ラインフィード | \ | UNIX システムでの改行文字です。 | \n | -| U+000D | キャリッジリターン | \ | コモドールと初期の Mac システムでの改行文字です。 | \r | -| U+2028 | ラインセパレーター | \ | [ウィキペディア](https://ja.wikipedia.org/wiki/改行コード) | | -| U+2029 | 改段落 | \ | [ウィキペディア](https://ja.wikipedia.org/wiki/改行コード) | | +| コードポイント | 名前 | 略語 | 説明 | エスケープシーケンス | +| -------------- | ------------------ | ----- | ---------------------------------------------------------- | -------------------- | +| U+000A | ラインフィード | \ | UNIX システムでの改行文字です。 | \n | +| U+000D | キャリッジリターン | \ | コモドールと初期の Mac システムでの改行文字です。 | \r | +| U+2028 | ラインセパレーター | \ | [ウィキペディア](https://ja.wikipedia.org/wiki/改行コード) | | +| U+2029 | 改段落 | \ | [ウィキペディア](https://ja.wikipedia.org/wiki/改行コード) | | ## コメント @@ -67,7 +67,7 @@ JavaScript には、コード内にコメントを割り当てる方法が 2 つ ```js function comment() { // This is a one line JavaScript comment - console.log('Hello world!'); + console.log("Hello world!"); } comment(); ``` @@ -81,7 +81,7 @@ comment(); ```js function comment() { /* This is a one line JavaScript comment */ - console.log('Hello world!'); + console.log("Hello world!"); } comment(); ``` @@ -92,7 +92,7 @@ comment(); function comment() { /* This comment spans multiple lines. Notice that we don't need to end the comment until we're done. */ - console.log('Hello world!'); + console.log("Hello world!"); } comment(); ``` @@ -101,9 +101,9 @@ comment(); ```js function comment(x) { - console.log('Hello ' + x /* insert the value of x */ + ' !'); + console.log("Hello " + x /* insert the value of x */ + " !"); } -comment('world'); +comment("world"); ``` また、コードをコメントで囲むことで、コードが実行されないよう無効にすることができます。 @@ -142,9 +142,10 @@ _識別子_ は、値と名前をリンクさせるために使用されます ```js const decl = 1; // 変数宣言(`let` または `var` も可) function fn() {} // 関数宣言 -const obj = { key: 'value' }; // オブジェクトキー -class C { // クラス宣言 - #priv = 'value'; // プライベートプロパティ +const obj = { key: "value" }; // オブジェクトキー +class C { + // クラス宣言 + #priv = "value"; // プライベートプロパティ } lbl: console.log(1); // ラベル ``` @@ -155,7 +156,7 @@ JavaScript では、識別子は一般的に英数字、アンダースコア (` また、JavaScript では、識別子の中で [Unicode エスケープシーケンス](#unicode_escape_sequences)を `\u0000` または `\u{000000}` という形式で使用することができ、これは実際の Unicode 文字と同じ文字列値をエンコードするものです。例えば、`你好` と `\u4f60\u597d` は同じ識別子です。 -```js +```js-nolint const 你好 = "Hello"; console.log(\u4f60\u597d); // Hello ``` @@ -296,7 +297,7 @@ const els\u{65} = 1; 詳細については [`null`](/ja/docs/Web/JavaScript/Reference/Operators/null) をご覧ください。 ```js -null +null; ``` ### 論理値リテラル @@ -304,8 +305,8 @@ null 詳細については[論理型](/ja/docs/Web/JavaScript/Data_structures#論理型)をご覧ください。 ```js -true -false +true; +false; ``` ### 数値リテラル @@ -315,12 +316,12 @@ false #### 10 進数 ```js -1234567890 -42 +1234567890; +42; // 先頭にゼロがあるものを使用する場合は注意してください -0888 // 888 は 10 進数として解釈されます -0777 // 8 進数として解釈され、 10 進数では 511 です。 +0888; // 888 は 10 進数として解釈されます +0777; // 8 進数として解釈され、 10 進数では 511 です。 ``` なお、 10 進数リテラルはゼロ (`0`) から始め、他の 10 進数の数字を続けることができますが、 `0` に続く数字がすべて 8 より小さい場合は、その数値が 8 進数として解釈されることに注意してください。さらに、接頭辞 `0` を持つ数値リテラルは、 8 進数として解釈しても 10 進数として解釈しても、厳格モードでは構文エラーが発生します。ですから、代わりに `0o` 接頭辞を使用してください。 @@ -330,13 +331,13 @@ false 10 進数の指数リテラルは、 `beN` の書式で指定します。ここで `b` は基数(整数または浮動小数点)、その後に `e` 文字(セパレーターまたは指数記号として機能)、そして `N` は*指数*または*べき乗数* - 符号付き整数です(2019 ECMA-262 仕様に従います)。 ```js -0e-5 // 0 -0e+5 // 0 -5e1 // 50 -175e-2 // 1.75 -1e3 // 1000 -1e-3 // 0.001 -1E3 // 1000 +0e-5; // 0 +0e5; // 0 +5e1; // 50 +175e-2; // 1.75 +1e3; // 1000 +1e-3; // 0.001 +1e3; // 1000 ``` #### 2 進数 @@ -344,9 +345,9 @@ false 2進数の構文は、先頭のゼロに続いて小文字または大文字のラテン文字 "B" を使用します (`0b` または `0B`)。 `0b` の後の数字が 0 または 1 でない場合は、 {{jsxref("SyntaxError")}} が "Missing binary digits after 0b" の内容で発生します。 ```js -const FLT_SIGNBIT = 0b10000000000000000000000000000000; // 2147483648 +const FLT_SIGNBIT = 0b10000000000000000000000000000000; // 2147483648 const FLT_EXPONENT = 0b01111111100000000000000000000000; // 2139095040 -const FLT_MANTISSA = 0B00000000011111111111111111111111; // 8388607 +const FLT_MANTISSA = 0b00000000011111111111111111111111; // 8388607 ``` #### 8 進数 @@ -354,7 +355,7 @@ const FLT_MANTISSA = 0B00000000011111111111111111111111; // 8388607 8進数の構文は、先頭のゼロに続いて小文字または大文字のラテン文字 "O" を使用します (`0o` または `0O`)。 `0o` の後の数字が範囲 (01234567) 外の場合、 {{jsxref("SyntaxError")}} が "Missing octal digits after 0o" の内容で発生します。 ```js -const n = 0O755; // 493 +const n = 0o755; // 493 const m = 0o644; // 420 ``` @@ -363,9 +364,9 @@ const m = 0o644; // 420 16 進数の構文は、先頭のゼロに続いて小文字または大文字のラテン文字 "X" を使用します (`0x` または `0X`)。 0x の後の数字が範囲 (0123456789ABCDEF) 外の場合、 {{jsxref("SyntaxError")}} が "Identifier starts immediately after numeric literal" の内容で発生します。 ```js -0xFFFFFFFFFFFFFFFFF // 295147905179352830000 -0x123456789ABCDEF // 81985529216486900 -0XA // 10 +0xfffffffffffffffff; // 295147905179352830000 +0x123456789abcdef; // 81985529216486900 +0xa; // 10 ``` #### 長整数リテラル @@ -373,10 +374,10 @@ const m = 0o644; // 420 [長整数型](/ja/docs/Web/JavaScript/Data_structures#長整数型) (BigInt) は JavaScript の数値プリミティブであり、自由な精度の整数を表すことができます。長整数リテラルは、整数の末尾に `n` を追加することで作成されます。 ```js -123456789123456789n // 123456789123456789 -0o777777777777n // 68719476735 -0x123456789ABCDEFn // 81985529216486895 -0b11101001010101010101n // 955733 +123456789123456789n; // 123456789123456789 +0o777777777777n; // 68719476735 +0x123456789abcdefn; // 81985529216486895 +0b11101001010101010101n; // 955733 ``` なお、先頭がゼロだけの 8 進数は `BigInt` では動作しません。 @@ -389,7 +390,7 @@ const m = 0o644; // 420 8 進数の `BigInt` 数値では、常にゼロの後に "o" (大文字でも小文字でも) を付けて使用してください。 ```js example-good -0o755n +0o755n; ``` `BigInt` についての詳細な情報は、 [JavaScript のデータ構造](/ja/docs/Web/JavaScript/Data_structures#長整数型)をご覧ください。 @@ -400,20 +401,20 @@ const m = 0o644; // 420 ```js // 10 進数の区切り文字 -1_000_000_000_000 -1_050.95 +1_000_000_000_000; +1_050.95; // 2 進数の区切り文字 -0b1010_0001_1000_0101 +0b1010_0001_1000_0101; // 8 進数の区切り文字 -0o2_2_5_6 +0o2_2_5_6; // 16 進数の区切り文字 -0xA0_B0_C0 +0xa0_b0_c0; // BigInt の区切り文字 -1_000_000_000_000_000_000_000n +1_000_000_000_000_000_000_000n; ``` なお、以下の制限があります。 @@ -434,10 +435,12 @@ const m = 0o644; // 420 詳細については、 {{jsxref("Object")}} と[オブジェクト初期化子](/ja/docs/Web/JavaScript/Reference/Operators/Object_initializer)をご覧ください。 ```js -const o = { a: 'foo', b: 'bar', c: 42 }; +const o = { a: "foo", b: "bar", c: 42 }; // 短縮記法 -const a = 'foo', b = 'bar', c = 42; +const a = "foo", + b = "bar", + c = 42; const o = { a, b, c }; // 以前の表記 @@ -449,7 +452,7 @@ const o = { a: a, b: b, c: c }; 詳細については {{jsxref("Array")}} をご覧ください。 ```js -[1954, 1974, 1990, 2014] +[1954, 1974, 1990, 2014]; ``` ### 文字列リテラル @@ -462,7 +465,7 @@ const o = { a: a, b: b, c: c }; すべてのコードポイントが、エスケープシーケンスの形で現れることができます。文字列リテラルは ECMAScript の文字列値として評価されます。これらの文字列の値を生成する際に、 Unicode コードポイントは UTF-16 エンコードされます。 -```js +```js-nolint 'foo'; "bar"; ``` @@ -472,7 +475,7 @@ const o = { a: a, b: b, c: c }; 16 進エスケープシーケンスは `\x` に続いてちょうど 2 桁の 16 進数から成り、 0x0000 から 0x00FF までのコード単位またはコードポイントを表します。 ```js -'\xA9' // "©" +"\xA9"; // "©" ``` #### Unicode エスケープシーケンス @@ -482,7 +485,7 @@ Unicode エスケープシーケンスは `\u` に続いてちょうど 4 桁の See also {{jsxref("String.fromCharCode()")}} and {{jsxref("String.prototype.charCodeAt()")}}. ```js -'\u00A9' // "©" (U+A9) +"\u00A9"; // "©" (U+A9) ``` #### Unicode コードポイントエスケープ @@ -492,10 +495,10 @@ Unicode コードポイントエスケープは `\u{` に続いて 16 進数の {{jsxref("String.fromCodePoint()")}} または {{jsxref("String.prototype.codePointAt()")}} もご覧ください。 ```js -'\u{2F804}' // CJK COMPATIBILITY IDEOGRAPH-2F804 (U+2F804) +"\u{2F804}"; // CJK COMPATIBILITY IDEOGRAPH-2F804 (U+2F804) // 同じ文字をサロゲートペアで表したもの -'\uD87E\uDC04' +"\uD87E\uDC04"; ``` ### 正規表現リテラル @@ -516,14 +519,14 @@ Unicode コードポイントエスケープは `\u{` に続いて 16 進数の 詳細について、[テンプレート文字列](/ja/docs/Web/JavaScript/Reference/Template_literals)をご覧ください。 ```js -`string text` +`string text`; `string text line 1 - string text line 2` + string text line 2`; -`string text ${expression} string text` +`string text ${expression} string text`; -tag `string text ${expression} string text` +tag `string text ${expression} string text`; ``` ## 自動セミコロン挿入 @@ -541,7 +544,7 @@ tag `string text ${expression} string text` 1\. 文法上許されないトークンに出会ったとき、それが前のトークンから少なくとも 1 つの[改行文字](#改行文字)で区切られているか、そのトークンが "}" であれば、その前にセミコロンが挿入されます。 -```js +```js-nolint { 1 2 } 3 @@ -559,14 +562,14 @@ tag `string text ${expression} string text` ```js do { // ... -} while (condition) /* ; */ // ここで ASI -const a = 1 +} while (condition); /* ; */ // ここで ASI +const a = 1; ``` 2\. トークンの入力ストリームの末尾が検出され、パーサーが単一の入力ストリームを完全なプログラムとして解釈できない場合、末尾にセミコロンが挿入されます。 ```js -const a = 1 /* ; */ // ASI here +const a = 1; /* ; */ // ASI here ``` このルールは前回のルールを補完するもので、特に「問題のあるトークン」がなく、入力ストリームが終わっている場合を想定しています。 @@ -585,7 +588,7 @@ const a = 1 /* ; */ // ASI here ここで [`++`](/ja/docs/Web/JavaScript/Reference/Operators/Increment) は、変数 `b` に適用される後置演算子としては扱われません。というのも、改行文字が `b` と`++` の間にあるからです。 -```js +```js-nolint a = b ++c @@ -597,7 +600,7 @@ a = b; ここでは、 `return` 文は `undefined` を返し、 `a + b` は到達できない文になります。 -```js +```js-nolint return a + b @@ -609,7 +612,7 @@ a + b; ASI は、改行がなければ無効な構文を生成するようなトークンを区切った場合にのみ発生することに注意してください。次のトークンが有効な構文の一部として解釈できる場合は、セミコロンは挿入されません。例えば、 -```js example-bad +```js-nolint example-bad const a = 1 (1).toString() @@ -619,7 +622,7 @@ const b = 1 `()` は関数呼び出しと見なせるので、通常は ASI が発生しないでしょう。同様に、 `[]` はメンバーアクセスである可能性があります。上のコードは次のものと同等です。 -```js example-bad +```js-nolint example-bad const a = 1(1).toString() const b = 1[1, 2, 3].forEach(console.log) diff --git a/files/ja/web/javascript/reference/operators/addition/index.md b/files/ja/web/javascript/reference/operators/addition/index.md index b12325dfeaba97..31003fa77f25c0 100644 --- a/files/ja/web/javascript/reference/operators/addition/index.md +++ b/files/ja/web/javascript/reference/operators/addition/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Addition ## 構文 ```js -x + y +x + y; ``` ## 例 @@ -21,26 +21,26 @@ x + y ```js // 数値 + 数値 -> 加算 -1 + 2 // 3 +1 + 2; // 3 // 論理値 + 数値 -> 加算 -true + 1 // 2 +true + 1; // 2 // 論理値 + 論理値 -> 加算 -false + false // 0 +false + false; // 0 ``` ### 文字列の連結 ```js // 文字列 + 文字列 -> 連結 -'foo' + 'bar' // "foobar" +"foo" + "bar"; // "foobar" // 数値 + 文字列 -> 連結 -5 + 'foo' // "5foo" +5 + "foo"; // "5foo" // 文字列 + 論理値 -> 連結 -'foo' + false // "foofalse" +"foo" + false; // "foofalse" ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/addition_assignment/index.md b/files/ja/web/javascript/reference/operators/addition_assignment/index.md index 26fb010b5ff322..22d66bbafb219e 100644 --- a/files/ja/web/javascript/reference/operators/addition_assignment/index.md +++ b/files/ja/web/javascript/reference/operators/addition_assignment/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Addition_assignment ## 構文 ```js -x += y // x = x + y +x += y; // x = x + y ``` ## 例 @@ -26,22 +26,22 @@ x += y // x = x + y // baz = true // 数値 + 数値 -> 加算 -bar += 2 // 7 +bar += 2; // 7 // 論理値 + 数値 -> 加算 -baz += 1 // 2 +baz += 1; // 2 // 論理値 + 論理値 -> 加算 -baz += false // 1 +baz += false; // 1 // 数値 + 文字列 -> 連結 -bar += 'foo' // "5foo" +bar += "foo"; // "5foo" // 文字列 + 論理値 -> 連結 -foo += false // "foofalse" +foo += false; // "foofalse" // 文字列 + 文字列 -> 連結 -foo += 'bar' // "foobar" +foo += "bar"; // "foobar" ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/assignment/index.md b/files/ja/web/javascript/reference/operators/assignment/index.md index 1aa20d3ad9d4bd..45c9ca76f04859 100644 --- a/files/ja/web/javascript/reference/operators/assignment/index.md +++ b/files/ja/web/javascript/reference/operators/assignment/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Assignment ## 構文 ```js -x = y +x = y; ``` ## 例 diff --git a/files/ja/web/javascript/reference/operators/bitwise_and/index.md b/files/ja/web/javascript/reference/operators/bitwise_and/index.md index 30f960182c9f05..21f5c7f2c7bb23 100644 --- a/files/ja/web/javascript/reference/operators/bitwise_and/index.md +++ b/files/ja/web/javascript/reference/operators/bitwise_and/index.md @@ -12,14 +12,14 @@ slug: Web/JavaScript/Reference/Operators/Bitwise_AND ## 構文 ```js -a & b +a & b; ``` ## 解説 オペランドは 32 ビットの整数値に変換され、ビット (ゼロまたは 1) の並びによって表現されます。32 ビットを超える数値は最上位のビットが破棄されます。例えば、次の 32 ビットを超える整数は 32 ビット整数に変換されます。 -```js +```plain 変換前: 11100110111110100000000000000110000000000001 変換後: 10100000000000000110000000000001 ``` diff --git a/files/ja/web/javascript/reference/operators/bitwise_and_assignment/index.md b/files/ja/web/javascript/reference/operators/bitwise_and_assignment/index.md index d6672b35c2056f..b1caacdee87eda 100644 --- a/files/ja/web/javascript/reference/operators/bitwise_and_assignment/index.md +++ b/files/ja/web/javascript/reference/operators/bitwise_and_assignment/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Bitwise_AND_assignment ## 構文 ```js -x &= y // x = x & y +x &= y; // x = x & y ``` ## 例 diff --git a/files/ja/web/javascript/reference/operators/bitwise_not/index.md b/files/ja/web/javascript/reference/operators/bitwise_not/index.md index 81f6822467bf6b..fa8572457cc124 100644 --- a/files/ja/web/javascript/reference/operators/bitwise_not/index.md +++ b/files/ja/web/javascript/reference/operators/bitwise_not/index.md @@ -12,14 +12,14 @@ slug: Web/JavaScript/Reference/Operators/Bitwise_NOT ## 構文 ```js -~a +~a; ``` ## 解説 オペランドは 32 ビットの整数値に変換され、ビット (ゼロまたは 1) の並びによって表現されます。32 ビットを超える数値は最上位のビットが破棄されます。例えば、次の 32 ビットを超える整数は 32 ビット整数に変換されます。 -```js +```plain 変換前: 11100110111110100000000000000110000000000001 変換後: 10100000000000000110000000000001 ``` @@ -50,9 +50,9 @@ slug: Web/JavaScript/Reference/Operators/Bitwise_NOT ### ビット否定の使用 ```js -~0; // -1 +~0; // -1 ~-1; // 0 -~1; // -2 +~1; // -2 ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/bitwise_or/index.md b/files/ja/web/javascript/reference/operators/bitwise_or/index.md index 885f3545200ed2..9f28e767d4a1a5 100644 --- a/files/ja/web/javascript/reference/operators/bitwise_or/index.md +++ b/files/ja/web/javascript/reference/operators/bitwise_or/index.md @@ -12,14 +12,14 @@ slug: Web/JavaScript/Reference/Operators/Bitwise_OR ## 構文 ```js -a | b +a | b; ``` ## 解説 オペランドは 32 ビットの整数値に変換され、ビット (ゼロまたは 1) の並びによって表現されます。32 ビットを超える数値は最上位のビットが破棄されます。例えば、次の 32 ビットを超える整数は 32 ビット整数に変換されます。 -```js +```plain 変換前: 11100110111110100000000000000110000000000001 変換後: 10100000000000000110000000000001 ``` diff --git a/files/ja/web/javascript/reference/operators/bitwise_or_assignment/index.md b/files/ja/web/javascript/reference/operators/bitwise_or_assignment/index.md index 63ff913152d9fb..60f78149f5338a 100644 --- a/files/ja/web/javascript/reference/operators/bitwise_or_assignment/index.md +++ b/files/ja/web/javascript/reference/operators/bitwise_or_assignment/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Bitwise_OR_assignment ## 構文 ```js -x |= y // x = x | y +x |= y; // x = x | y ``` ## 例 diff --git a/files/ja/web/javascript/reference/operators/bitwise_xor/index.md b/files/ja/web/javascript/reference/operators/bitwise_xor/index.md index fef1e3058736c4..57673ba562c3b4 100644 --- a/files/ja/web/javascript/reference/operators/bitwise_xor/index.md +++ b/files/ja/web/javascript/reference/operators/bitwise_xor/index.md @@ -12,14 +12,14 @@ slug: Web/JavaScript/Reference/Operators/Bitwise_XOR ## 構文 ```js -a ^ b +a ^ b; ``` ## 解説 オペランドは 32 ビットの整数値に変換され、ビット (ゼロまたは 1) の並びによって表現されます。32 ビットを超える数値は最上位のビットが破棄されます。例えば、次の 32 ビットを超える整数は 32 ビット整数に変換されます。 -```js +```plain 変換前: 11100110111110100000000000000110000000000001 変換後: 10100000000000000110000000000001 ``` @@ -37,7 +37,7 @@ XOR 演算の真理値表は次のようになります。 | 1 | 0 | 1 | | 1 | 1 | 0 | -```js +```plain 9 (10 進数) = 00000000000000000000000000001001 (2 進数) 14 (10 進数) = 00000000000000000000000000001110 (2 進数) -------------------------------- diff --git a/files/ja/web/javascript/reference/operators/bitwise_xor_assignment/index.md b/files/ja/web/javascript/reference/operators/bitwise_xor_assignment/index.md index 278c9c9fc016d5..d78456a92d8c65 100644 --- a/files/ja/web/javascript/reference/operators/bitwise_xor_assignment/index.md +++ b/files/ja/web/javascript/reference/operators/bitwise_xor_assignment/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Bitwise_XOR_assignment ## 構文 ```js -x ^= y // x = x ^ y +x ^= y; // x = x ^ y ``` ## 例 @@ -20,14 +20,14 @@ x ^= y // x = x ^ y ### ビット排他的論理和代入の使用 ```js -let a = 5; // 00000000000000000000000000000101 -a ^= 3; // 00000000000000000000000000000011 +let a = 5; // 00000000000000000000000000000101 +a ^= 3; // 00000000000000000000000000000011 console.log(a); // 00000000000000000000000000000110 // 6 -let b = 5; // 00000000000000000000000000000101 -b ^= 0; // 00000000000000000000000000000000 +let b = 5; // 00000000000000000000000000000101 +b ^= 0; // 00000000000000000000000000000000 console.log(b); // 00000000000000000000000000000101 // 5 diff --git a/files/ja/web/javascript/reference/operators/class/index.md b/files/ja/web/javascript/reference/operators/class/index.md index 083c9e461b127e..9b42eedae18ff9 100644 --- a/files/ja/web/javascript/reference/operators/class/index.md +++ b/files/ja/web/javascript/reference/operators/class/index.md @@ -31,16 +31,16 @@ const MyClass = class [className] [extends otherClassName] { `constructor` メソッドは省略可能です。クラス式で生成されたクラスは、常に {{jsxref("Operators/typeof", "typeof")}} が "`function`" の値を返します。 ```js -'use strict'; -let Foo = class {}; // コンストラクタープロパティは省略可能 -Foo = class {}; // 再宣言が可能 +"use strict"; +let Foo = class {}; // コンストラクタープロパティは省略可能 +Foo = class {}; // 再宣言が可能 -typeof Foo; // "function" を返す -typeof class {}; // "function" を返す +typeof Foo; // "function" を返す +typeof class {}; // "function" を返す -Foo instanceof Object; // true +Foo instanceof Object; // true Foo instanceof Function; // true -class Foo {} // SyntaxError が発生 (クラス宣言は再宣言ができない) +class Foo {} // SyntaxError が発生 (クラス宣言は再宣言ができない) ``` ## 例 @@ -53,13 +53,13 @@ class Foo {} // SyntaxError が発生 (クラス宣言は再宣言が const Foo = class { constructor() {} bar() { - return 'Hello World!'; + return "Hello World!"; } }; const instance = new Foo(); -instance.bar(); // "Hello World!" -Foo.name; // "Foo" +instance.bar(); // "Hello World!" +Foo.name; // "Foo" ``` ### 名前付きクラス式 @@ -72,11 +72,11 @@ const Foo = class NamedFoo { whoIsThere() { return NamedFoo.name; } -} +}; const bar = new Foo(); -bar.whoIsThere(); // "NamedFoo" -NamedFoo.name; // ReferenceError: NamedFoo is not defined -Foo.name; // "NamedFoo" +bar.whoIsThere(); // "NamedFoo" +NamedFoo.name; // ReferenceError: NamedFoo is not defined +Foo.name; // "NamedFoo" ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/comma_operator/index.md b/files/ja/web/javascript/reference/operators/comma_operator/index.md index f24cf740e540b5..c8bd1d99b753c6 100644 --- a/files/ja/web/javascript/reference/operators/comma_operator/index.md +++ b/files/ja/web/javascript/reference/operators/comma_operator/index.md @@ -34,7 +34,7 @@ expr1, expr2, expr3... ```js for (var i = 0, j = 9; i <= 9; i++, j--) - console.log('a[' + i + '][' + j + '] = ' + a[i][j]); + console.log("a[" + i + "][" + j + "] = " + a[i][j]); ``` 代入を行う際にカンマを使うと、カンマ演算子が通常どおりに働いていないかのように見える場合があります (カンマ演算子が式の中にないため)。以下の例では `a` には `b = 3` の値 (すなわち 3) が設定されますが、さらに `c = 4` が評価されて、その結果 (すなわち 4) がコンソールに返されます。これは[演算子の優先順位と結合性](/ja/docs/Web/JavaScript/Reference/Operators/Operator_Precedence)のためです。 @@ -42,12 +42,12 @@ for (var i = 0, j = 9; i <= 9; i++, j--) ```js var a, b, c; -a = b = 3, c = 4; // コンソールに 4 が返る +(a = b = 3), (c = 4); // コンソールに 4 が返る console.log(a); // 3 (もっとも左) var x, y, z; -x = (y = 5, z = 6); // コンソールに 6 が返る +x = ((y = 5), (z = 6)); // コンソールに 6 が返る console.log(x); // 6 (もっとも右) ``` @@ -55,7 +55,7 @@ console.log(x); // 6 (もっとも右) カンマ演算子が行うことのもうひとつの例が、値を返す前の処理です。前述のとおり最後の要素のみを返しますが、その他すべての要素も評価します。よって、以下のようなことができます。 -```js +```js-nolint function myFunc() { var x = 0; diff --git a/files/ja/web/javascript/reference/operators/conditional_operator/index.md b/files/ja/web/javascript/reference/operators/conditional_operator/index.md index f0aa88f8fe4261..823df62c596e87 100644 --- a/files/ja/web/javascript/reference/operators/conditional_operator/index.md +++ b/files/ja/web/javascript/reference/operators/conditional_operator/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Conditional_operator ## 構文 ```js -condition ? exprIfTrue : exprIfFalse +condition ? exprIfTrue : exprIfFalse; ``` ### 引数 @@ -34,7 +34,7 @@ condition ? exprIfTrue : exprIfFalse ```js var age = 26; -var beverage = (age >= 21) ? "ビール" : "ジュース"; +var beverage = age >= 21 ? "ビール" : "ジュース"; console.log(beverage); // "ビール" ``` @@ -43,13 +43,13 @@ console.log(beverage); // "ビール" よくある使い方の一つに、 `null` になる可能性がある値を扱うというものがあります。 ```js -let greeting = person => { - let name = person ? person.name : `お客さん` - return `やあ、${name}` -} +let greeting = (person) => { + let name = person ? person.name : `お客さん`; + return `やあ、${name}`; +}; -console.log(greeting({name: `アリス`})); // "やあ、アリス" -console.log(greeting(null)); // "やあ、お客さん" +console.log(greeting({ name: `アリス` })); // "やあ、アリス" +console.log(greeting(null)); // "やあ、お客さん" ``` ### 条件の連鎖 diff --git a/files/ja/web/javascript/reference/operators/decrement/index.md b/files/ja/web/javascript/reference/operators/decrement/index.md index 4f7e0d5d4e8133..dc8e5d9fc5ba17 100644 --- a/files/ja/web/javascript/reference/operators/decrement/index.md +++ b/files/ja/web/javascript/reference/operators/decrement/index.md @@ -12,8 +12,8 @@ slug: Web/JavaScript/Reference/Operators/Decrement ## 構文 ```js -x-- ---x +x--; +--x; ``` ## 解説 diff --git a/files/ja/web/javascript/reference/operators/delete/index.md b/files/ja/web/javascript/reference/operators/delete/index.md index 30bd716ebc211c..1c82d683188414 100644 --- a/files/ja/web/javascript/reference/operators/delete/index.md +++ b/files/ja/web/javascript/reference/operators/delete/index.md @@ -12,14 +12,14 @@ JavaScript の **`delete` 演算子**は、オブジェクトからプロパテ ## 構文 ```js -delete expression +delete expression; ``` `expression` は下記のように、[プロパティ](/ja/docs/Glossary/property/JavaScript)への参照として評価されるべきものです。 ```js -delete object.property -delete object['property'] +delete object.property; +delete object["property"]; ``` ### 引数 @@ -61,12 +61,12 @@ delete object['property'] ```js var Employee = { age: 28, - name: 'abc', - designation: 'developer' -} + name: "abc", + designation: "developer", +}; -console.log(delete Employee.name); // true を返す -console.log(delete Employee.age); // true を返す +console.log(delete Employee.name); // true を返す +console.log(delete Employee.age); // true を返す // When trying to delete a property that does // not exist, true is returned @@ -79,18 +79,18 @@ console.log(delete Employee.salary); // true を返す ```js var Employee = {}; -Object.defineProperty(Employee, 'name', {configurable: false}); +Object.defineProperty(Employee, "name", { configurable: false }); -console.log(delete Employee.name); // false を返す +console.log(delete Employee.name); // false を返す ``` {{jsxref("Statements/var","var")}} や {{jsxref("Statements/let","let")}}、{{jsxref("Statements/const","const")}} は、`delete` 演算子で削除できない編集不可のプロパティを生成します: ```js -var nameOther = 'XYZ'; +var nameOther = "XYZ"; // We can access this global property using: -Object.getOwnPropertyDescriptor(window, 'nameOther'); +Object.getOwnPropertyDescriptor(window, "nameOther"); // output: Object {value: "XYZ", // writable: true, @@ -100,7 +100,7 @@ Object.getOwnPropertyDescriptor(window, 'nameOther'); // Since "nameOther" is added using with the // var keyword, it is marked as "non-configurable" -delete nameOther; // return false +delete nameOther; // return false ``` strict モードでは、例外が発生します。 @@ -110,8 +110,14 @@ strict モードでは、例外が発生します。 strict モードのとき、`delete` が変数や関数の引数、関数名への直接参照に使われた場合、{{jsxref("SyntaxError")}} が発生します。したがって、 strict モードでエラーが発生することを防ぐためには、 `delete` 演算子を `delete object.property` または `delete object['property']` の形で使用する必要があります。 ```js -Object.defineProperty(globalThis, 'variable1', { value: 10, configurable: true, }); -Object.defineProperty(globalThis, 'variable2', { value: 10, configurable: false, }); +Object.defineProperty(globalThis, "variable1", { + value: 10, + configurable: true, +}); +Object.defineProperty(globalThis, "variable2", { + value: 10, + configurable: false, +}); // strict モードでは SyntaxError console.log(delete variable1); // true @@ -140,26 +146,26 @@ ECMAScript はオブジェクトに対して反復処理を行った時の順序 ```js // adminName プロパティをグローバルスコープに生成 -adminName = 'xyz'; +adminName = "xyz"; // empCount プロパティをグローバルスコープに生成 // var を使用しているため、これは構成不可となります。 let や const でも同じことになります。 var empCount = 43; EmployeeDetails = { - name: 'xyz', + name: "xyz", age: 5, - designation: 'Developer' + designation: "Developer", }; // adminName はグローバルスコープのプロパティです。 // var を使用せずに生成されたため、構成可能になっているので // 削除することができます。 -delete adminName; // true を返す +delete adminName; // true を返す // 対照的に、 empCount は var が使用されたので // 構成可能ではありません。 -delete empCount; // false を返す +delete empCount; // false を返す // delete を使用してオブジェクトからプロパティを削除することができます。 delete EmployeeDetails.name; // true を返す @@ -172,13 +178,13 @@ delete Math.PI; // false を返す // EmployeeDetails はグローバルスコープのプロパティです。 // "var" を使用せずに定義されたため、構成可能となっています。 -delete EmployeeDetails; // true を返す +delete EmployeeDetails; // true を返す function f() { var z = 44; // delete はローカル変数名には効果がありません。 - delete z; // false を返す + delete z; // false を返す } ``` @@ -222,28 +228,28 @@ console.log(foo.bar); // undefined `delete` 演算子が配列の要素を削除すると、要素は配列からなくなります。 次の例では、`trees[3]` が `delete` で削除されます。 ```js -var trees = ['redwood', 'bay', 'cedar', 'oak', 'maple']; +var trees = ["redwood", "bay", "cedar", "oak", "maple"]; delete trees[3]; if (3 in trees) { - // これは実行されない + // これは実行されない } ``` ある配列の要素を存在したまま未定義の値としたい場合は、`delete` 演算子の代わりに `undefined` 値を使用してください。次の例では、`trees[3]` に `undefined` を割り当てていますが、配列のその要素は存在したままです。 ```js -var trees = ['redwood', 'bay', 'cedar', 'oak', 'maple']; +var trees = ["redwood", "bay", "cedar", "oak", "maple"]; trees[3] = undefined; if (3 in trees) { - // これは実行される + // これは実行される } ``` 代わりに、配列の内容を変更して配列要素を削除したい場合は、`{{jsxref("Array.splice()", "splice()")}}` メソッドを使用してください。次の例では、{{jsxref("Array.splice()", "splice()")}} を使用して配列から `trees[3]` を削除しています。 ```js -var trees = ['redwood', 'bay', 'cedar', 'oak', 'maple']; -trees.splice(3,1); +var trees = ["redwood", "bay", "cedar", "oak", "maple"]; +trees.splice(3, 1); console.log(trees); // ["redwood", "bay", "cedar", "maple"] ``` diff --git a/files/ja/web/javascript/reference/operators/division/index.md b/files/ja/web/javascript/reference/operators/division/index.md index 273d8ed27fd799..0c98125232637b 100644 --- a/files/ja/web/javascript/reference/operators/division/index.md +++ b/files/ja/web/javascript/reference/operators/division/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Division ## 構文 ```js -x / y +x / y; ``` ## 例 @@ -20,21 +20,21 @@ x / y ### 基本的な除算 ```js -1 / 2 // 0.5 +1 / 2; // 0.5 -Math.floor(3 / 2) // 1 +Math.floor(3 / 2); // 1 -1.0 / 2.0 // 0.5 +1.0 / 2.0; // 0.5 ``` ### ゼロ除算 ```js -2.0 / 0 // Infinity +2.0 / 0; // Infinity -2.0 / 0.0 // Infinity。 0.0 === 0 であるため +2.0 / 0.0; // Infinity。 0.0 === 0 であるため -2.0 / -0.0 // -Infinity +2.0 / -0.0; // -Infinity ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/division_assignment/index.md b/files/ja/web/javascript/reference/operators/division_assignment/index.md index 86ce9162e0e4cc..2bca80b7558bed 100644 --- a/files/ja/web/javascript/reference/operators/division_assignment/index.md +++ b/files/ja/web/javascript/reference/operators/division_assignment/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Division_assignment

構文

```js -x /= y // x = x / y +x /= y; // x = x / y ```

@@ -23,10 +23,10 @@ x /= y // x = x / y // 以下の変数があり、すべての演算がこの順に実行されると想定する // bar = 5 -bar /= 2 // 2.5 -bar /= 2 // 1.25 -bar /= 0 // Infinity -bar /= 'foo' // NaN +bar /= 2; // 2.5 +bar /= 2; // 1.25 +bar /= 0; // Infinity +bar /= "foo"; // NaN ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/equality/index.md b/files/ja/web/javascript/reference/operators/equality/index.md index e552166180fe40..7b92f81f045ee4 100644 --- a/files/ja/web/javascript/reference/operators/equality/index.md +++ b/files/ja/web/javascript/reference/operators/equality/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Equality ## 構文 ```js -x == y +x == y; ``` ## 解説 @@ -40,36 +40,36 @@ x == y ### 型変換がない場合の比較 ```js -1 == 1; // true -"hello" == "hello"; // true +1 == 1; // true +"hello" == "hello"; // true ``` ### 型変換がある場合の比較 ```js -"1" == 1; // true -1 == "1"; // true -0 == false; // true -0 == null; // false -0 == undefined; // false -0 == !!null; // true (論理 NOT 演算子を参照) -0 == !!undefined; // true (論理 NOT 演算子を参照) -null == undefined; // true +"1" == 1; // true +1 == "1"; // true +0 == false; // true +0 == null; // false +0 == undefined; // false +0 == !!null; // true (論理 NOT 演算子を参照) +0 == !!undefined; // true (論理 NOT 演算子を参照) +null == undefined; // true const number1 = new Number(3); const number2 = new Number(3); -number1 == 3; // true -number1 == number2; // false +number1 == 3; // true +number1 == number2; // false ``` ### オブジェクトの比較 ```js -const object1 = {"key": "value"} -const object2 = {"key": "value"}; +const object1 = { key: "value" }; +const object2 = { key: "value" }; -object1 == object2 // false -object2 == object2 // true +object1 == object2; // false +object2 == object2; // true ``` ### 文字列と String オブジェクトの比較 @@ -92,9 +92,9 @@ console.log(string4 == string4); // true ### Date と文字列の比較 ```js -const d = new Date('December 17, 1995 03:24:00'); +const d = new Date("December 17, 1995 03:24:00"); const s = d.toString(); // for example: "Sun Dec 17 1995 03:24:00 GMT-0800 (Pacific Standard Time)" -console.log(d == s); //true +console.log(d == s); //true ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/exponentiation/index.md b/files/ja/web/javascript/reference/operators/exponentiation/index.md index ad2398df6ab9f6..e73b2f8a61134b 100644 --- a/files/ja/web/javascript/reference/operators/exponentiation/index.md +++ b/files/ja/web/javascript/reference/operators/exponentiation/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Exponentiation ## 構文 ```js -x ** y +x ** y; ``` ## 解説 @@ -40,19 +40,19 @@ JavaScript では、あいまいなべき乗式を記述することはできま ### 基本的なべき乗 ```js -2 ** 3 // 8 -3 ** 2 // 9 -3 ** 2.5 // 15.588457268119896 -10 ** -1 // 0.1 -NaN ** 2 // NaN +2 ** 3; // 8 +3 ** 2; // 9 +3 ** 2.5; // 15.588457268119896 +10 ** -1; // 0.1 +NaN ** 2; // NaN ``` ### 結合性 ```js -2 ** 3 ** 2 // 512 -2 ** (3 ** 2) // 512 -(2 ** 3) ** 2 // 64 +2 ** 3 ** 2; // 512 +2 ** (3 ** 2); // 512 +(2 ** 3) ** 2; // 64 ``` ### 単項演算子との使用 @@ -60,13 +60,13 @@ NaN ** 2 // NaN べき乗式の結果の符号を反転させる例です。 ```js --(2 ** 2) // -4 +-(2 ** 2); // -4 ``` べき乗式の基底を強制的に負の数にする例です。 ```js -(-2) ** 2 // 4 +(-2) ** 2; // 4 ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/exponentiation_assignment/index.md b/files/ja/web/javascript/reference/operators/exponentiation_assignment/index.md index edef3ffa243282..6977b024003702 100644 --- a/files/ja/web/javascript/reference/operators/exponentiation_assignment/index.md +++ b/files/ja/web/javascript/reference/operators/exponentiation_assignment/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Exponentiation_assignment ## 構文 ```js -x **= y // x = x ** y +x **= y; // x = x ** y ``` ## 例 @@ -23,8 +23,8 @@ x **= y // x = x ** y // 次の変数を想定 // bar = 5 -bar **= 2 // 25 -bar **= 'foo' // NaN +bar **= 2; // 25 +bar **= "foo"; // NaN ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/function/index.md b/files/ja/web/javascript/reference/operators/function/index.md index 0458938cad4437..4fd34b39440c2b 100644 --- a/files/ja/web/javascript/reference/operators/function/index.md +++ b/files/ja/web/javascript/reference/operators/function/index.md @@ -41,12 +41,12 @@ ES2015 からは{{jsxref("Functions/Arrow_functions", "アロー関数", "", 1)} JavaScript の関数式は、{{jsxref("Statements/function", "関数宣言", "#Function_declaration_hoisting", 1)}}と違って巻き上げられません。定義前に関数式を使用することはできません。 ```js -console.log(notHoisted) // undefined +console.log(notHoisted); // undefined // 変数名は巻き上げが行われますが、定義は行われません。そのため undefined になります。 notHoisted(); // TypeError: notHoisted is not a function -var notHoisted = function() { - console.log('bar'); +var notHoisted = function () { + console.log("bar"); }; ``` @@ -56,29 +56,29 @@ var notHoisted = function() { ```js let math = { - 'factit': function factorial(n) { - console.log(n) + factit: function factorial(n) { + console.log(n); if (n <= 1) { return 1; } return n * factorial(n - 1); - } + }, }; -math.factit(3) //3;2;1; +math.factit(3); //3;2;1; ``` 関数式が代入された変数は `name` プロパティを持ちます。別の変数に代入しても name は変わりません。関数名が省略された場合、(暗黙的な名前が) 変数名になります。関数名が存在したら、それが関数名になります (明示的な名前)。これは{{jsxref("Functions/Arrow_functions", "アロー関数", "", 1)}}にもあてはまります (アロー関数は名前がないので変数名を暗黙的な名前として与えます)。 ```js -var foo = function() {} -foo.name // "foo" +var foo = function () {}; +foo.name; // "foo" -var foo2 = foo -foo2.name // "foo" +var foo2 = foo; +foo2.name; // "foo" -var bar = function baz() {} -bar.name // "baz" +var bar = function baz() {}; +bar.name; // "baz" console.log(foo === foo2); // true console.log(typeof baz); // undefined @@ -92,8 +92,8 @@ console.log(bar === baz); // false (errors because baz == undefined) 次の例では、無名関数を定義してそれを `x` に割り当てます。 関数は引数の 2 乗を返します。 ```js -var x = function(y) { - return y * y; +var x = function (y) { + return y * y; }; ``` @@ -102,9 +102,9 @@ var x = function(y) { {{Glossary("Callback_function", "コールバック")}}としてより頻繁に使われます。 ```js -button.addEventListener('click', function(event) { - console.log('button is clicked!') -}) +button.addEventListener("click", function (event) { + console.log("button is clicked!"); +}); ``` ### 即時実行関数式 (IIFE) の使用 @@ -112,15 +112,15 @@ button.addEventListener('click', function(event) { 無名の関数が生成され、呼び出されます。 ```js -(function() { - console.log('Code runs!') +(function () { + console.log("Code runs!"); })(); // または -!function() { - console.log('Code runs!') -}(); +!(function () { + console.log("Code runs!"); +})(); ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/function_star_/index.md b/files/ja/web/javascript/reference/operators/function_star_/index.md index 5ebca8ac366dc2..ffc5a96a0810cf 100644 --- a/files/ja/web/javascript/reference/operators/function_star_/index.md +++ b/files/ja/web/javascript/reference/operators/function_star_/index.md @@ -33,13 +33,13 @@ function* [name]([param1[, param2[, ..., paramN]]]) { ## 例 -### function* の使用 +### function\* の使用 次の例では、無名ジェネレーター関数を定義し、`x` に代入します。関数は引数の二乗を生成します。 ```js -let x = function*(y) { - yield y * y; +let x = function* (y) { + yield y * y; }; ``` diff --git a/files/ja/web/javascript/reference/operators/greater_than/index.md b/files/ja/web/javascript/reference/operators/greater_than/index.md index fc8e78a2b3df12..2f3e1badc2ff5c 100644 --- a/files/ja/web/javascript/reference/operators/greater_than/index.md +++ b/files/ja/web/javascript/reference/operators/greater_than/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Greater_than ## 構文 ```js -x > y +x > y; ``` ## 解説 @@ -24,57 +24,57 @@ x > y ### 文字列と文字列の比較 ```js -console.log("a" > "b"); // false -console.log("a" > "a"); // false -console.log("a" > "3"); // true +console.log("a" > "b"); // false +console.log("a" > "a"); // false +console.log("a" > "3"); // true ``` ### 文字列と数値の比較 ```js -console.log("5" > 3); // true -console.log("3" > 3); // false -console.log("3" > 5); // false +console.log("5" > 3); // true +console.log("3" > 3); // false +console.log("3" > 5); // false -console.log("hello" > 5); // false -console.log(5 > "hello"); // false +console.log("hello" > 5); // false +console.log(5 > "hello"); // false -console.log("5" > 3n); // true -console.log("3" > 5n); // false +console.log("5" > 3n); // true +console.log("3" > 5n); // false ``` ### 数値と数値の比較 ```js -console.log(5 > 3); // true -console.log(3 > 3); // false -console.log(3 > 5); // false +console.log(5 > 3); // true +console.log(3 > 3); // false +console.log(3 > 5); // false ``` ### Number と BigInt の比較 ```js -console.log(5n > 3); // true -console.log(3 > 5n); // false +console.log(5n > 3); // true +console.log(3 > 5n); // false ``` ### 論理値、null、undefined、NaN の比較 ```js -console.log(true > false); // true -console.log(false > true); // false +console.log(true > false); // true +console.log(false > true); // false -console.log(true > 0); // true -console.log(true > 1); // false +console.log(true > 0); // true +console.log(true > 1); // false -console.log(null > 0); // false -console.log(1 > null); // true +console.log(null > 0); // false +console.log(1 > null); // true -console.log(undefined > 3); // false -console.log(3 > undefined); // false +console.log(undefined > 3); // false +console.log(3 > undefined); // false -console.log(3 > NaN); // false -console.log(NaN > 3); // false +console.log(3 > NaN); // false +console.log(NaN > 3); // false ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/greater_than_or_equal/index.md b/files/ja/web/javascript/reference/operators/greater_than_or_equal/index.md index 801ebcebaf2ecf..b60853abd0c67b 100644 --- a/files/ja/web/javascript/reference/operators/greater_than_or_equal/index.md +++ b/files/ja/web/javascript/reference/operators/greater_than_or_equal/index.md @@ -12,7 +12,7 @@ slug: Web/JavaScript/Reference/Operators/Greater_than_or_equal ## 構文 ```js -x >= y +x >= y; ``` ## 解説 @@ -24,56 +24,56 @@ x >= y ### 文字列と文字列の比較 ```js -console.log("a" >= "b"); // false -console.log("a" >= "a"); // true -console.log("a" >= "3"); // true +console.log("a" >= "b"); // false +console.log("a" >= "a"); // true +console.log("a" >= "3"); // true ``` ### 文字列と数値の比較 ```js -console.log("5" >= 3); // true -console.log("3" >= 3); // true -console.log("3" >= 5); // false +console.log("5" >= 3); // true +console.log("3" >= 3); // true +console.log("3" >= 5); // false -console.log("hello" >= 5); // false -console.log(5 >= "hello"); // false +console.log("hello" >= 5); // false +console.log(5 >= "hello"); // false ``` ### 数値と数値の比較 ```js -console.log(5 >= 3); // true -console.log(3 >= 3); // true -console.log(3 >= 5); // false +console.log(5 >= 3); // true +console.log(3 >= 3); // true +console.log(3 >= 5); // false ``` ### Number と BigInt の比較 ```js -console.log(5n >= 3); // true -console.log(3 >= 3n); // true -console.log(3 >= 5n); // false +console.log(5n >= 3); // true +console.log(3 >= 3n); // true +console.log(3 >= 5n); // false ``` ### 論理値、null、undefined、NaN の比較 ```js -console.log(true >= false); // true -console.log(true >= true); // true -console.log(false >= true); // false +console.log(true >= false); // true +console.log(true >= true); // true +console.log(false >= true); // false -console.log(true >= 0); // true -console.log(true >= 1); // true +console.log(true >= 0); // true +console.log(true >= 1); // true -console.log(null >= 0); // true -console.log(1 >= null); // true +console.log(null >= 0); // true +console.log(1 >= null); // true console.log(undefined >= 3); // false console.log(3 >= undefined); // false -console.log(3 >= NaN); // false -console.log(NaN >= 3); // false +console.log(3 >= NaN); // false +console.log(NaN >= 3); // false ``` ## 仕様書 diff --git a/files/ja/web/javascript/reference/operators/grouping/index.md b/files/ja/web/javascript/reference/operators/grouping/index.md index 47ce88eee6f01c..57acc29ba9c51f 100644 --- a/files/ja/web/javascript/reference/operators/grouping/index.md +++ b/files/ja/web/javascript/reference/operators/grouping/index.md @@ -31,23 +31,23 @@ var b = 2; var c = 3; // default precedence -a + b * c // 7 +a + b * c; // 7 // evaluated by default like this -a + (b * c) // 7 +a + (b * c); // 7 // now overriding precedence // addition before multiplication -(a + b) * c // 9 +(a + b) * c; // 9 // which is equivalent to -a * c + b * c // 9 +a * c + b * c; // 9 ``` これらの例では、評価の左から右への順序が維持されていることに注意してください。つまり、*演算子*の評価順序は変わっていますが、*オペランド*の評価順序は変わっていません。 例えば次のコードを見てください。 ```js -a() * (b() + c()) +a() * (b() + c()); ``` 関数 `a` は関数 `b` よりも前に、また関数 `b` は関数 `c` よりも前に呼び出されます。 diff --git a/files/ja/web/javascript/reference/operators/import.meta/index.md b/files/ja/web/javascript/reference/operators/import.meta/index.md index e937e7139edfb6..d19aee87e3402f 100644 --- a/files/ja/web/javascript/reference/operators/import.meta/index.md +++ b/files/ja/web/javascript/reference/operators/import.meta/index.md @@ -44,7 +44,7 @@ console.log(import.meta); // { url: "file:///home/user/my-module.js" } ```html ``` @@ -52,17 +52,17 @@ import './index.mjs?someURLInfo=5'; ```js // index.mjs -new URL(import.meta.url).searchParams.get('someURLInfo'); // 5 +new URL(import.meta.url).searchParams.get("someURLInfo"); // 5 ``` ファイルが別のファイルをインポートする場合も同様です。 ```js // index.mjs -import './index2.mjs?someURLInfo=5'; +import "./index2.mjs?someURLInfo=5"; // index2.mjs -new URL(import.meta.url).searchParams.get('someURLInfo'); // 5 +new URL(import.meta.url).searchParams.get("someURLInfo"); // 5 ``` メモ: 後者の例のように Node.js はクエリパラメータ(またはハッシュ)を渡しますが、Node 14.1.0 以降、クエリパラメータを持つ URL を `node --experimental-modules index.mjs?someURLInfo=5` という形式で読み込むとエラーになることに注意してください(この文脈では URL ではなくファイルとして扱われます)。