From d192fb918b0e2aa8869de6dcc59de8464b6e879a Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Fri, 11 Dec 2020 18:59:39 -0500 Subject: dump 2020-12-11 --- files/ja/web/api/document/body/index.html | 31 ++--- files/ja/web/css/url/index.html | 3 +- .../guide/exception_handling_statements/index.html | 36 ------ .../throw_statement/index.html | 34 ------ .../try...catch_statement/index.html | 135 --------------------- .../reference/global_objects/array/sort/index.html | 19 ++- .../intl/datetimeformat/datetimeformat/index.html | 60 ++++++++- .../intl/datetimeformat/formatrange/index.html | 26 ++-- .../datetimeformat/supportedlocalesof/index.html | 103 +++++----------- .../global_objects/intl/listformat/index.html | 4 + .../intl/numberformat/formattoparts/index.html | 4 +- 11 files changed, 129 insertions(+), 326 deletions(-) delete mode 100644 files/ja/web/javascript/guide/exception_handling_statements/index.html delete mode 100644 files/ja/web/javascript/guide/exception_handling_statements/throw_statement/index.html delete mode 100644 files/ja/web/javascript/guide/exception_handling_statements/try...catch_statement/index.html (limited to 'files/ja/web') diff --git a/files/ja/web/api/document/body/index.html b/files/ja/web/api/document/body/index.html index 055e65e7a1..cf20308c6b 100644 --- a/files/ja/web/api/document/body/index.html +++ b/files/ja/web/api/document/body/index.html @@ -3,7 +3,6 @@ title: Document.body slug: Web/API/Document/body tags: - API - - BODY - Document - HTML DOM - Property @@ -17,26 +16,26 @@ translation_of: Web/API/Document/body

構文

-
var objRef = document.body;
-document.body = objRef;
+
const objRef = document.body
+document.body = objRef

-
// Given this HTML: <body id="oldBodyElement"></body>
+
// Given this HTML: <body id="oldBodyElement"></body>
 alert(document.body.id); // "oldBodyElement"
 
-var aNewBodyElement = document.createElement("body");
+const aNewBodyElement = document.createElement("body");
 
 aNewBodyElement.id = "newBodyElement";
 document.body = aNewBodyElement;
 alert(document.body.id); // "newBodyElement"
 
-

メモ

+

document.body は文書の内容を持つ要素です。 <body> の内容を持つ文書では <body> 要素を返し、フレームセット文書では、これは最も外側の <frameset> 要素を返します。

-

body は設定が可能ですが、文書に新しい body を設定すると、既存の <body> 要素の子ノードは全て削除されます。

+

body プロパティは設定が可能ですが、文書に新しい body を設定すると、既存の <body> 要素の子ノードは全て削除されます。

仕様書

@@ -52,32 +51,22 @@ alert(document.body.id); // "newBodyElement" {{SpecName('HTML WHATWG','dom.html#dom-document-body','Document.body')}} {{Spec2('HTML WHATWG')}} -   + {{SpecName('HTML5.1','dom.html#dom-document-body','Document.body')}} {{Spec2('HTML5.1')}} -   + {{SpecName('HTML5 W3C','dom.html#dom-document-body','Document.body')}} {{Spec2('HTML5 W3C')}} -   - - - {{SpecName('DOM2 HTML','html.html#ID-56360201','Document.body')}} - {{Spec2('DOM2 HTML')}} -   - - - {{SpecName('DOM1','level-one-html.html#attribute-body','Document.body')}} - {{Spec2('DOM1')}} - 初回定義 + -

ブラウザーの対応

+

ブラウザーの互換性

diff --git a/files/ja/web/css/url/index.html b/files/ja/web/css/url/index.html index 95d1814a2e..2ca334be5a 100644 --- a/files/ja/web/css/url/index.html +++ b/files/ja/web/css/url/index.html @@ -9,7 +9,8 @@ tags: - URL - urn - レイアウト -translation_of: Web/CSS/url +translation_of: Web/CSS/url() +translation_of_original: Web/CSS/url ---
{{CssRef}}
diff --git a/files/ja/web/javascript/guide/exception_handling_statements/index.html b/files/ja/web/javascript/guide/exception_handling_statements/index.html deleted file mode 100644 index fddf6c4181..0000000000 --- a/files/ja/web/javascript/guide/exception_handling_statements/index.html +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: 例外処理文 -slug: Web/JavaScript/Guide/Exception_Handling_Statements ---- -

例外処理文

-

throw 文を使用すると例外を投げることができます。また、try...catch 文を使用すると例外を処理することができます。

-

try...catch 文を使用して Java の例外を処理することもできます。この情報については JavaScript での Java の例外の処理 および Java と JavaScript との通信 をご覧ください。

- -

例外の種類

-

JavaScript ではほとんどどんなオブジェクトでも投げることができます。とは言っても、必ずしもすべての投げられたオブジェクトが同等に作られているわけではありません。数値や文字列をエラーとして投げる方法はよく用いられますが、特にこの用途のために作られている例外の種類のうちのどれかを使用したほうがより効率的であることがよくあります。

- -

{{ PreviousNext("JavaScript/Guide/Comments", "JavaScript/Guide/Exception_Handling_Statements/throw_Statement") }}

diff --git a/files/ja/web/javascript/guide/exception_handling_statements/throw_statement/index.html b/files/ja/web/javascript/guide/exception_handling_statements/throw_statement/index.html deleted file mode 100644 index 9d98321883..0000000000 --- a/files/ja/web/javascript/guide/exception_handling_statements/throw_statement/index.html +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: throw 文 -slug: Web/JavaScript/Guide/Exception_Handling_Statements/throw_Statement ---- -

throw 文

-

throw 文は例外を投げるために使用します。例外を投げるときは、投げたい値からなる式を指定してください。

-
throw expression;
-
-

特定の型の式だけではなく、あらゆる式を投げることができます。下記のコードは様々な型の例外を投げています。

-
throw "Error2";
-throw 42;
-throw true;
-throw {toString: function() { return "I'm an object!"; } };
-
-
- 注意:例外を投げる際にオブジェクトを指定することができます。すると、catch ブロックでそのオブジェクトのプロパティを参照できるようになります。次の例では UserException という種類の myUserException というオブジェクトを作ります。また、このオブジェクトを throw 文で使用します。
-
// UserException という種類のオブジェクトを作成
-function UserException (message)
-{
-  this.message=message;
-  this.name="UserException";
-}
-
-// 文字列として使用されるとき(例:エラーコンソール上)に
-// 例外を整形する
-UserException.prototype.toString = function ()
-{
-  return this.name + ': "' + this.message + '"';
-}
-
-// そのオブジェクトの種類のインスタンスを作成し、それを投げる
-throw new UserException("Value too high");
-
-

{{ PreviousNext("JavaScript/Guide/Exception_Handling_Statements", "JavaScript/Guide/Exception_Handling_Statements/try...catch_Statement") }}

diff --git a/files/ja/web/javascript/guide/exception_handling_statements/try...catch_statement/index.html b/files/ja/web/javascript/guide/exception_handling_statements/try...catch_statement/index.html deleted file mode 100644 index 678cd3f38e..0000000000 --- a/files/ja/web/javascript/guide/exception_handling_statements/try...catch_statement/index.html +++ /dev/null @@ -1,135 +0,0 @@ ---- -title: try...catch 文 -slug: Web/JavaScript/Guide/Exception_Handling_Statements/try...catch_Statement ---- -

try...catch 文

- -

try...catch 文はテストしたい文のブロックを指定し、さらに投げられるであろう例外に対する 1 つ以上の対処方法を指定します。例外が投げられると try...catch 文がそれを受け取ります。

- -

try...catch 文は 1 つの try ブロックと 0 個以上の catch ブロックからなります。前者は 1 つ以上の文からなります。後者は try ブロックで例外が投げられた場合にどうするかを指定する文からなります。すなわち、成功させたい try ブロックと、失敗した場合にコントロールを渡す catch ブロックからなります。try ブロック内(もしくは try ブロック内から呼び出された関数内)のいずれかの文が例外を投げた場合、コントロールはすぐに catch ブロックに移ります。try ブロックで例外が投げられなかった場合は catch ブロックは飛ばされます。finally ブロックは try および catch ブロックが実行された後に実行されます。ただし try...catch 文の後に続く文より先に実行されます。

- -

次の例では try...catch 文を使用しています。この例では渡された値に基づいて配列から月の名前を取り出す関数を呼び出します。値に対応する月の数字 (1-12) がなかったら、InvalidMonthNo という値を持つ例外が投げられ、catch ブロックの中の文は monthName という変数に unknown という値をセットします。

- -
function getMonthName (mo) {
-    mo=mo-1; // 月の数字を配列のインデックスに合わせる (1=Jan, 12=Dec)
-    var months=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul",
-          "Aug","Sep","Oct","Nov","Dec");
-    if (months[mo] != null) {
-       return months[mo]
-    } else {
-       throw "InvalidMonthNo"
-    }
-}
-
-try {
-// テストする文
-    monthName=getMonthName(myMonth) // 関数は例外を投げることがある
-}
-catch (e) {
-    monthName="unknown"
-    logMyErrors(e) // 例外オブジェクトをエラー処理部分に渡す
-}
-
- -

catch ブロック

- -

単一の catch ブロックを使用すると、try ブロックで生じうるすべての例外を扱うことができます。また、扱う例外の種類によって catch ブロックをそれぞれに分けることもできます。

- -

単一の catch ブロック
- try ブロックで投げられるいかなる例外にも対応したエラー処理コードを実行するには、try...catch 文で catch を 1 つ使用してください。

- -

単一の catch ブロックは次のように使用します。

- -
catch (catchID) {
-  statements
-}
-
- -

catch ブロックは、throw 文で指定された値を持つ識別子(上記の構文における catchID)を指定します。この識別子を使用することで投げられた例外についての情報を得ることができます。JavaScript は catch ブロックに入るときにこの識別子を作成します。識別子は catch ブロックにいる間だけ持続します。つまり、catch ブロックの実行が終了するとその識別子はもう使えなくなります。

- -

例えば、次のコードは例外を投げます。例外が生じるとコントロールが catch ブロックに移ります。

- -
try {
-   throw "myException" // 例外を生成
-}
-catch (e) {
-// どんな例外も扱う文
-   logMyErrors(e) // 例外オブジェクトをエラー処理部分に渡す
-}
-
- -

複数の catch ブロック
- 1 つの try 文に対して、複数の条件についての catch ブロックを使うことができます。そして、そのそれぞれがそれぞれの種類の例外を担当します。この場合、そのブロックで指定されている例外が投げられたときだけ、適切な条件の catch ブロックに入ることになります。すべての未指定の例外のために、すべての例外に対応した catch ブロックをその文の最後の catch ブロックとしてオプション的に設けることもできます。

- -

例えば、次の関数は 3 つの別の関数(どこかで定義済み)を呼び出します。この関数はその引数が妥当であるかを確かめます。妥当性確認関数が確認対象の構成要素が妥当でないと決定した場合、その関数は 0 を返し、該当する例外を呼び出し元に投げさせます。

- -
function getCustInfo(name, id, email)
-{
-   var n, i, e;
-
-   if (!validate_name(name))
-       throw "InvalidNameException"
-   else
-       n = name;
-       if (!validate_id(id))
-          throw "InvalidIdException"
-       else
-          i = id;
-       if (!validate_email(email))
-          throw "InvalidEmailException"
-       else
-          e = email;
-       cust = (n + " " + i + " " + e);
-       return (cust);
-}
-
- -

おのおのの条件の catch ブロックは適当な例外処理部分にコントロールを渡します。

- -
try {
-// 関数は 3 つの例外を投げうる
-   getCustInfo("Lee", 1234, "lee@netscape.com")
-}
-
-catch (e if e == "InvalidNameException") {
-// 不正な名前に対しての処理部分を呼び出す
-   bad_name_handler(e)
-}
-
-catch (e if e == "InvalidIdException") {
-// 不正な ID に対しての処理部分を呼び出す
-   bad_id_handler(e)
-}
-
-catch (e if e == "InvalidEmailException") {
-// 不正なメールアドレスに対しての処理部分を呼び出す
-   bad_email_handler(e)
-}
-
-catch (e){
-// 何が起きるかはわからないが、そのログをとる
-   logError(e)
-}
-
- -

finally ブロック

- -

finally ブロックは、try および catch ブロックの実行が終わった後に実行される文からなります。ただし try...catch 文の後に続く文より前に実行されます。finally ブロックは例外が投げられても投げられなくても実行されます。例外が投げられた場合、finally ブロック内の文はたとえ例外処理をする catch ブロックがなくても実行されます。

- -

finally ブロックを使用することで、例外発生時に適切にスクリプトを停止させることができます。例えば、スクリプトで使用していたリソースを解放する必要があるかもしれません。次の例ではファイルを開き、そのファイルを使用する文を実行します(サーバサイド JavaScript ではファイルにアクセスできます)。ファイルを開いている間に例外が投げられると、スクリプトが停止する前に finally ブロックがそのファイルを閉じます。

- -
openMyFile();
-try {
-   writeMyFile(theData); // エラーを投げる可能性がある
-} catch(e) {
-   handleError(e); // エラーを受け取り、それを処理する
-} finally {
-   closeMyFile(); // 常にリソースを閉じる
-}
-
- -

try...catch 文のネスト

- -

1 つ以上の try...catch 文を入れ子にすることができます。内側の try...catch 文に catch ブロックがない場合、囲んでいる try...catch 文の catch ブロックがマッチしているか確認されます。

- -

{{ PreviousNext("JavaScript/Guide/Exception_Handling_Statements/throw_Statement", "JavaScript/Guide/Defining_Functions") }}

diff --git a/files/ja/web/javascript/reference/global_objects/array/sort/index.html b/files/ja/web/javascript/reference/global_objects/array/sort/index.html index 6719c55cd4..77437acb42 100644 --- a/files/ja/web/javascript/reference/global_objects/array/sort/index.html +++ b/files/ja/web/javascript/reference/global_objects/array/sort/index.html @@ -12,7 +12,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/sort ---
{{JSRef}}
-

sort() メソッドは、配列の要素を in place でソートします。既定のソート順は昇順で、要素を文字列に変換してから、UTF-16 コード単位の値の並びとして比較します。

+

sort() メソッドは、配列の要素を in place でソートします。既定のソート順は昇順で、要素を文字列に変換してから、UTF-16 コード単位の値の並びとして比較します。

このソートで消費される CPU時間やメモリースペースは実装に依存するので、ここで言及することは出来ません。

@@ -27,22 +27,21 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/sort

引数

+
+
firstEl
+
比較対象の一つ目の要素を指定します。
+
secondEl
+
比較対象の二つ目の要素を指定します。
+
+
compareFunction {{optional_inline}}
ソート順を定義する関数を指定します。省略された場合、配列の各要素は文字列に変換され、各文字の Unicode のコードポイント順に従ってソートされます。
-
-
firstEl
-
比較対象の一つ目の要素を指定します。
-
secondEl
-
比較対象の二つ目の要素を指定します。
-
-
-

返値

-

ソートされた結果の配列。ソートは対象配列上で in place に行われることに注意して下さい。コピーされた別の配列が準備されることはありません。

+

ソートされた結果の配列。ソートは対象配列上で in place に行われることに注意して下さい。コピーされた別の配列が準備されることはありません。

解説

diff --git a/files/ja/web/javascript/reference/global_objects/intl/datetimeformat/datetimeformat/index.html b/files/ja/web/javascript/reference/global_objects/intl/datetimeformat/datetimeformat/index.html index 049e69396d..76ae82a7c6 100644 --- a/files/ja/web/javascript/reference/global_objects/intl/datetimeformat/datetimeformat/index.html +++ b/files/ja/web/javascript/reference/global_objects/intl/datetimeformat/datetimeformat/index.html @@ -20,14 +20,14 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/Date

構文

-
new Intl.DateTimeFormat([locales[, options]])
+
new Intl.DateTimeFormat([locales[, options]])

引数

locales {{optional_inline}}
-

BCP47 言語タグの文字列、または、そのような文字列の配列です。ブラウザーの既定のロケールを使用するには、この引数を省略するか、 undefined を渡すかしてください。 Unicode 拡張に対応しています (例えば "en-US-u-ca-buddhist" など)。 locales 引数の一般的な形式と解釈は、 {{jsxref("Global_Objects/Intl", "Intl", "#Locale_identification_and_negotiation", 1)}} のページをご覧ください。次の Unicode 拡張キーが利用できます。

+

BCP47 言語タグの文字列、または、そのような文字列の配列です。ブラウザーの既定のロケールを使用するには、空の配列を渡してください。。 Unicode 拡張に対応しています (例えば "en-US-u-ca-buddhist" など)。 locales 引数の一般的な形式と解釈は、 {{jsxref("Global_Objects/Intl", "Intl", "#Locale_identification_and_negotiation", 1)}} のページをご覧ください。次の Unicode 拡張キーが利用できます。

nu
@@ -51,6 +51,10 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/Date
  • "medium"
  • "short"
  • + +
    +

    dateStyletimeStyle と一緒に使用することができますが、他のオプションと一緒に使用することができません (例えば weekday, hour, month, など)。

    +
    timeStyle
    format() が呼び出された際に使用される時刻の書式化スタイルです。利用可能な値は以下のとおりです。 @@ -61,8 +65,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/Date
  • "short"
  • -
    fractionalSecondDigits
    -
    format() を呼び出したときに適用する秒の小数点以下の桁数です。有効な値は 0-3 です。
    +
    +
    +

    timeStyledateStyle と一緒に使用することができますが、他のオプションと一緒に使用することができません (例えば weekday, hour, month, など)。

    +
    +
    calendar
    暦です。有効な値は、 "buddhist", "chinese", " coptic", "ethiopia", "ethiopic", "gregory", " hebrew", "indian", "islamic", "iso8601", " japanese", "persian", "roc" です。
    dayPeriod
    @@ -142,6 +149,20 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/Date
    分の表現です。利用可能な値は "numeric", "2-digit" です。
    second
    秒の表現です。利用可能な値は "numeric", "2-digit" です。
    +
    fractionalSecondDigits
    +
    +
    +

    Firefox 84, Chrome 84, などで追加されました。詳しくは互換性一覧表を参照してください。

    +
    + 秒の小数点以下を表すために使用される数字の桁数 (その先の桁は切り捨てられます)。利用可能な値は次の通りです。 + +
      +
    • 0 (小数点以下は切り捨て)
    • +
    • 1 (小数点以下は1桁で表される。例えば、 736 は 7 と書式化される。)
    • +
    • 2 (小数点以下は2桁で表される。例えば、 736 は 73 と書式化される。)
    • +
    • 3 (小数点以下は2桁で表される。例えば、 736 は 736 と書式化される。)
    • +
    +
    timeZoneName
    タイムゾーン名の表現です。利用可能な値は以下の通りです。
      @@ -155,6 +176,37 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/Date
    +

    + +

    DateTimeFormat の使用

    + +

    ロケールを指定しない基本的な使用方法では、 DateTimeFormat は既定のロケールとオプションを使用します。

    + +
    var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
    +
    +// toLocaleString without arguments depends on the implementation,
    +// the default locale, and the default time zone
    +console.log(new Intl.DateTimeFormat().format(date));
    +// → "12/19/2012" if run with en-US locale (language) and time zone America/Los_Angeles (UTC-0800)
    + +

    timeStyle と dateStyle の使用

    + +
    let o = new Intl.DateTimeFormat("en" , {
    +  timeStyle: "short"
    +});
    +console.log(o.format(Date.now())); // "13:31 AM"
    +
    +let o = new Intl.DateTimeFormat("en" , {
    +  dateStyle: "short"
    +});
    +console.log(o.format(Date.now())); // "07/07/20"
    +
    +let o = new Intl.DateTimeFormat("en" , {
    +  timeStyle: "medium",
    +  dateStyle: "short"
    +});
    +console.log(o.format(Date.now())); // "07/07/20, 13:31:55 AM"
    +

    仕様書

    diff --git a/files/ja/web/javascript/reference/global_objects/intl/datetimeformat/formatrange/index.html b/files/ja/web/javascript/reference/global_objects/intl/datetimeformat/formatrange/index.html index 39d0d6212e..36091b38c9 100644 --- a/files/ja/web/javascript/reference/global_objects/intl/datetimeformat/formatrange/index.html +++ b/files/ja/web/javascript/reference/global_objects/intl/datetimeformat/formatrange/index.html @@ -10,23 +10,23 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/form ---
    {{JSRef}}
    -

    Intl.DateTimeFormat.prototype.formatRange() は、日付の範囲をもっとも簡明な方法で、 {{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}} オブジェクトがインスタンス化されたときに提供された localeoptions に基づいて書式化します。

    +

    Intl.DateTimeFormat.prototype.formatRange() は、日付の範囲をもっとも簡明な方法で、 {{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}} オブジェクトがインスタンス化されたときに提供された localeoptions に基づいて書式化します。

    {{EmbedInteractiveExample("pages/js/intl-datetimeformat-prototype-formatrange.html", "taller")}}
    - +

    構文

    -
    Intl.DateTimeFormat.prototype.formatRange(startDate, endDate)
    +
    Intl.DateTimeFormat.prototype.formatRange(startDate, endDate)

    -

    基本的な formatRange の使用

    +

    基本的な formatRange の使用

    -

    このメソッドは2つの {{jsxref("Date")}} を受け取り、 {{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}} オブジェクトがインスタンス化されたときに提供された localeoptions に基づいて日付の範囲を書式化します。

    +

    このメソッドは2つの {{jsxref("Date")}} を受け取り、 {{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}} オブジェクトがインスタンス化されたときに提供された localeoptions に基づいて日付の範囲を書式化します。

    -
    let date1 = new Date(Date.UTC(2007, 0, 10, 10, 0, 0));
    +
    let date1 = new Date(Date.UTC(2007, 0, 10, 10, 0, 0));
     let date2 = new Date(Date.UTC(2007, 0, 10, 11, 0, 0));
     let date3 = new Date(Date.UTC(2007, 0, 20, 10, 0, 0));
     // > 'Wed, 10 Jan 2007 10:00:00 GMT'
    @@ -66,19 +66,23 @@ console.log(fmt2.formatRange(date1, date3));
      
    - - - - - +
    仕様書状態備考
    Intl.DateTimeFormat.prototype.formatRangeStage 3{{SpecName('Intl.DateTimeFormat.formatRange', '#sec-intl.datetimeformat.prototype.formatRange', 'formatRange()')}}
    +

    ブラウザーの互換性

    + +
    + + +

    {{Compat("javascript.builtins.Intl.DateTimeFormat.formatRange")}}

    +
    +

    関連情報