From 7c2556fe79c44d7c31108b8c8b048d2b7704a95e Mon Sep 17 00:00:00 2001 From: t7yang Date: Mon, 10 Jan 2022 08:38:04 +0800 Subject: remove span tag in zh-TW --- .../a_re-introduction_to_javascript/index.html | 8 +-- .../web/javascript/about_javascript/index.html | 6 +-- .../web/javascript/data_structures/index.html | 2 +- .../guide/details_of_the_object_model/index.html | 2 +- .../web/javascript/guide/functions/index.html | 44 +++++++--------- files/zh-tw/web/javascript/guide/index.html | 28 +++++----- .../web/javascript/memory_management/index.html | 18 +++---- .../reference/global_objects/array/join/index.html | 2 +- .../reference/global_objects/array/map/index.html | 2 +- .../global_objects/date/getday/index.html | 2 +- .../reference/global_objects/date/index.html | 2 +- .../reference/global_objects/function/index.html | 2 +- .../reference/global_objects/math/index.html | 2 +- .../object/defineproperty/index.html | 2 +- .../global_objects/string/concat/index.html | 2 +- files/zh-tw/web/javascript/reference/index.html | 60 +++++++++++----------- .../operators/conditional_operator/index.html | 4 +- .../operators/optional_chaining/index.html | 2 +- .../reference/operators/typeof/index.html | 4 +- .../reference/statements/block/index.html | 10 ++-- .../reference/statements/export/index.html | 2 +- .../reference/statements/import/index.html | 2 +- .../reference/statements/label/index.html | 2 +- .../reference/statements/switch/index.html | 2 +- 24 files changed, 102 insertions(+), 110 deletions(-) diff --git a/files/zh-tw/web/javascript/a_re-introduction_to_javascript/index.html b/files/zh-tw/web/javascript/a_re-introduction_to_javascript/index.html index 97ff027312..8e437db632 100644 --- a/files/zh-tw/web/javascript/a_re-introduction_to_javascript/index.html +++ b/files/zh-tw/web/javascript/a_re-introduction_to_javascript/index.html @@ -167,7 +167,7 @@ true var name = "simon"; -

如果你宣告一個變數但不指定任何值,其型態便為 undefined (未定義)。 應該注意關於 JS 的區塊不會構成新變數作用域

+

如果你宣告一個變數但不指定任何值,其型態便為 undefined (未定義)。 應該注意關於 JS 的區塊不會構成新變數作用域

運算子

@@ -709,7 +709,7 @@ Person.prototype.fullNameReversed = function() { } -

Person.prototype 是一個由所有 Person 物件共享的物件。他將產生一個可供查看的關係鍊 (有個特殊的名字 prototype chain)。任何時候當我們想要使用某個不在 Person 中定義的 property 時,JavaScript 就會到 Person.prototype 裡頭尋找。因此, Person.prototype 就成為一個所有 Person 物件共用且可視的一個共享空間(物件)。這是一個提供強大工具,允許你可以在執行的任何一刻增加物件的相關函式。

+

Person.prototype 是一個由所有 Person 物件共享的物件。他將產生一個可供查看的關係鍊 (有個特殊的名字 prototype chain)。任何時候當我們想要使用某個不在 Person 中定義的 property 時,JavaScript 就會到 Person.prototype 裡頭尋找。因此, Person.prototype 就成為一個所有 Person 物件共用且可視的一個共享空間(物件)。這是一個提供強大工具,允許你可以在執行的任何一刻增加物件的相關函式。

> s = new Person("Simon", "Willison");
 > s.firstNameCaps();
@@ -764,7 +764,7 @@ desrever eb won nac sihT
 }
 
-

當我們這樣做時,並不會產生一個類似於 new() 的函式在 prototype 中。此外,apply() 有一個姊妹函式叫做 call,差異在於 call() 接受一個可被擴展的參數串列而非一個陣列。

+

當我們這樣做時,並不會產生一個類似於 new() 的函式在 prototype 中。此外,apply() 有一個姊妹函式叫做 call,差異在於 call() 接受一個可被擴展的參數串列而非一個陣列。

function lastNameCaps() {
     return this.last.toUpperCase();
@@ -833,7 +833,7 @@ y(7)
  
  • 記憶體釋放:當沒有參照可以指向該物件時
  • -

    當瀏覽器在執行的時候,需要維護來自 DOM 的大量物件。IE 使用自己的垃圾回收機制,而這個管理機制和 JavaScript 的不同--這就造成了記憶體流失。

    +

    當瀏覽器在執行的時候,需要維護來自 DOM 的大量物件。IE 使用自己的垃圾回收機制,而這個管理機制和 JavaScript 的不同--這就造成了記憶體流失。

    在我們這裡的例子中,記憶體流失源自於環狀的相互參照 (circular reference)-- JavaScript 物件及原生物件之間的相互參照。以下面的程式為例:

    diff --git a/files/zh-tw/web/javascript/about_javascript/index.html b/files/zh-tw/web/javascript/about_javascript/index.html index be8c2a733f..2e0c6d5bb8 100644 --- a/files/zh-tw/web/javascript/about_javascript/index.html +++ b/files/zh-tw/web/javascript/about_javascript/index.html @@ -9,13 +9,13 @@ translation_of: Web/JavaScript/About_JavaScript

    JavaScript® 是被用在上百萬的網頁和伺服器應用程式的一種網景開發物件腳本語言。Netscape's JavaScript 是 ECMA-262 Edition 3 (ECMAScript)的基礎標準腳本語言,兩者之間從公佈的標準只有輕微的差異。

    -

    相對於常見的誤解,JavaScript 不是解釋型的 Java。簡言之,JavaScript 是一種動態的腳本語言,支持基於原型的物件結構。基本語法是故意類似 Java 和 C + + 來減少需要學習語言的新概念。語言結構,如 if 語句,for 和 while 迴圈,和switch,並try ... catch塊的功能在這些語言中的相同(或接近)。

    +

    相對於常見的誤解,JavaScript 不是「解釋型的 Java」。簡言之,JavaScript 是一種動態的腳本語言,支持基於原型的物件結構。基本語法是故意類似 Java 和 C + + 來減少需要學習語言的新概念。語言結構,如 if 語句,for 和 while 迴圈,和switch,並try ... catch塊的功能在這些語言中的相同(或接近)。

    JavaScript可以作為一個程序和一個物件導向的語言。創建物件的 JavaScript 編程,通過附加的方法和屬性,否則空物件在運行時,而不是編譯語言如 C + + 和 Java 中常見語法類定義。一旦已建成一個物件,它可以被用來作為創建類似的物件的藍圖。

    JavaScript 的動態能力包括運行時物件的結構,可變參數列表,函數變量,動態腳本創建(透過 eval),物件自我檢查(透過 for ... in),原始碼恢復( JavaScript 程序可以將函式反編譯回原始碼)

    -

    內在的對象是數字,字符串,布林,日期, 正規表示法和數學。

    +

    內在的對象是數字、字符串、布林、日期、正規表示法、數學。

    更深入討論 JavaScript 編程遵循下面的 JavaScript 資源

    @@ -35,7 +35,7 @@ translation_of: Web/JavaScript/About_JavaScript

    在 Internet Explorer 中使用的 Chakra 引擎,在技術上是一個 JScript 引擎,而不是一個 JavaScript 引擎。

    -

    每個 mozilla.org 的 JavaScript 引擎,暴露了一個公共API應用程序可以調用的 JavaScript 支持。到目前為止,最常見的宿主環境為 JavaScript 是網路瀏覽器。 網路瀏覽器通常使用公共 API 來創建“宿主對象”負責反映 DOM 到 JavaScript。

    +

    每個 mozilla.org 的 JavaScript 引擎,暴露了一個公共API應用程序可以調用的 JavaScript 支持。到目前為止,最常見的宿主環境為 JavaScript 是網路瀏覽器。 網路瀏覽器通常使用公共 API 來創建「宿主對象」負責反映 DOM 到 JavaScript。

    另一個常見的應用是為 JavaScript(Web)伺服器端腳本語言。一個 JavaScript 的 Web 服務器會暴露主機對象代表一個 HTTP 請求和響應物件,由 JavaScript 動態生成網頁的程序操作。

    diff --git a/files/zh-tw/web/javascript/data_structures/index.html b/files/zh-tw/web/javascript/data_structures/index.html index 9a69b13f32..29f1a048b8 100644 --- a/files/zh-tw/web/javascript/data_structures/index.html +++ b/files/zh-tw/web/javascript/data_structures/index.html @@ -250,7 +250,7 @@ Infinity

    JavaScript has a standard library of built-in objects. Please have a look at the reference to find out about more objects.

    -

    使用 typeof 運算子來判斷型別

    +

    使用 typeof 運算子來判斷型別

    typeof 運算子可以幫助你找到你的變數型別,請閱讀〈reference page 〉來取得更多細節及邊緣案例。

    diff --git a/files/zh-tw/web/javascript/guide/details_of_the_object_model/index.html b/files/zh-tw/web/javascript/guide/details_of_the_object_model/index.html index 5b7872afce..f018d78c68 100644 --- a/files/zh-tw/web/javascript/guide/details_of_the_object_model/index.html +++ b/files/zh-tw/web/javascript/guide/details_of_the_object_model/index.html @@ -14,7 +14,7 @@ translation_of: Web/JavaScript/Guide/Details_of_the_Object_Model

    基於類的物件導向語言,比如 Java 和 C++,是建基於兩種概念之上:類和實例。

    diff --git a/files/zh-tw/web/javascript/guide/functions/index.html b/files/zh-tw/web/javascript/guide/functions/index.html index 03866506d1..7360a69623 100644 --- a/files/zh-tw/web/javascript/guide/functions/index.html +++ b/files/zh-tw/web/javascript/guide/functions/index.html @@ -5,29 +5,21 @@ translation_of: Web/JavaScript/Guide/Functions ---

    {{jsSidebar("JavaScript Guide")}} {{PreviousNext("Web/JavaScript/Guide/Loops_and_iteration", "Web/JavaScript/Guide/Expressions_and_Operators")}}

    -

    函式是構成javascript的基本要素之一。一個函式本身就是一段JavaScript程序—含用於執行某一個任務或計算的語法。要呼叫某一個函式之前,你必需先在這個函式欲執行的scope中定義它。

    +

    函式是構成javascript的基本要素之一。一個函式本身就是一段JavaScript程序—包含用於執行某一個任務或計算的語法。要呼叫某一個函式之前,你必需先在這個函式欲執行的scope中定義它。

    -

    定義函式

    +

    定義函式

    -

    一個函式的定義由一系列的函式關鍵詞組成, 依次為:

    +

    一個函式的定義由一系列的函式關鍵詞組成, 依次為:

     

    -

    例如,以下的程式碼定義了一個名為square的簡單函式:

    +

    例如,以下的程式碼定義了一個名為square的簡單函式:

    function square(number) {
    @@ -36,14 +28,14 @@ translation_of: Web/JavaScript/Guide/Functions
     
    -

    函式square有一個參數,叫作number。這個函式只有一行程式碼,它會回傳number自乘的結果。函式return 語法描述函式的返回值。

    +

    函式square有一個參數,叫作number。這個函式只有一行程式碼,它會回傳number自乘的結果。函式的 return 語法描述函式的返回值。

    return number * number;
     
    -

    原始參數(例如一個數字)被作為值傳遞給函式,如果呼叫的函式改變了這個參數的值,不會影響到函式外部的原始變數

    +

    原始參數(例如一個數字)被作為值傳遞給函式,如果呼叫的函式改變了這個參數的值,不會影響到函式外部的原始變數。

    -

    如果傳遞一個物件(例如 Array 或自定義的其它物件)作為參數,而函式改變了這個物件的屬性,這樣的改變對函式外部是有作用的(因為是傳遞物件的位址),如下面的例子所示

    +

    如果傳遞一個物件(例如 Array 或自定義的其它物件)作為參數,而函式改變了這個物件的屬性,這樣的改變對函式外部是有作用的(因為是傳遞物件的位址),如下面的例子所示:

    function myFunc(theObject) {
       theObject.make = "Toyota";
    @@ -60,7 +52,7 @@ y = mycar.make;     // y 的值為 "Toyota"
                         // (屬性 make 被 function 改變)
     
    -

    請注意,重新給參數指定一個對象(物件),並不會對函式的外部有任何影響,因為這樣只是改變了參數的值,而不是改變了對象的一個屬性值:

    +

    請注意,重新給參數指定一個對象(物件),並不會對函式的外部有任何影響,因為這樣只是改變了參數的值,而不是改變了對象的一個屬性值:

    function myFunc(theObject) {
       theObject = {make: "Ford", model: "Focus", year: 2006};
    @@ -75,13 +67,13 @@ x = mycar.make;     // x 的值為 "Honda"
     myFunc(mycar);
     y = mycar.make;     // y 的值還是 "Honda" 
    -

    儘管上述函式定義都是用的是陳述式,函式也同樣可以由函式表達式來定義。這樣的函式可以是匿名的;它不必有名稱。例如,上面提到的函式square也可這樣來定義:

    +

    儘管上述函式定義都是用的是陳述式,函式也同樣可以由函式表達式來定義。這樣的函式可以是匿名的;它不必有名稱。例如,上面提到的函式square也可這樣來定義:

    var square = function(number) {return number * number};
     var x = square(4) //x 的值為 16
    -
    必要時,函式名稱可與函式表達式同時存在,並且可以用於在函式內部代指其本身(遞迴):
    +
    必要時,函式名稱可與函式表達式同時存在,並且可以用於在函式內部代指其本身(遞迴):
     
    @@ -91,7 +83,7 @@ var x = square(4) //x 的值為 16
    console.log(factorial(3)); -

    函式表達式在將函式作為一個參數傳遞給其它函式時十分方便。下面的例子展示了一個叫map的函式如何​​被定義,而後呼叫一個匿名函式作為其第一個參數:

    +

    函式表達式在將函式作為一個參數傳遞給其它函式時十分方便。下面的例子展示了一個叫map的函式如何​​被定義,而後呼叫一個匿名函式作為其第一個參數:

    function map(f,a) {
       var result = [], // Create a new Array
    @@ -102,22 +94,22 @@ console.log(factorial(3));
     }
     
    -

    下面的程式碼呼叫map函式並將一個匿名函式傳入作為第一個參數:

    +

    下面的程式碼呼叫map函式並將一個匿名函式傳入作為第一個參數:

    map(function(x) {return x * x * x}, [0, 1, 2, 5, 10]);
     // 結果會回傳 [0, 1, 8, 125, 1000]
     
    -

    除了上述的定義方式以外,我們也可以透過 Function constructor 來定義, 類似 eval().

    +

    除了上述的定義方式以外,我們也可以透過 Function constructor 來定義, 類似 eval().

    呼叫函式

    -

    定義一個函式並不會自動的執行它。定義了函式僅僅是賦予函式以名稱並明確函式被呼叫時該做些什麼。呼叫函式才會以給定的參數真正執行這些動作。例如,一旦你定義了函式square,你可以如下這樣呼叫它:

    +

    定義一個函式並不會自動的執行它。定義了函式僅僅是賦予函式以名稱並明確函式被呼叫時該做些什麼。呼叫函式才會以給定的參數真正執行這些動作。例如,一旦你定義了函式square,你可以如下這樣呼叫它:

    square(5);
     
    -

    上述程式碼把5傳遞給square函式函式執行完會回傳25。

    +

    上述程式碼把5傳遞給square函式。函式執行完會回傳25。

    函式必須在呼叫區塊的可視範圍內,但函數也可以宣告在使用處的下面,如下列範例:

    diff --git a/files/zh-tw/web/javascript/guide/index.html b/files/zh-tw/web/javascript/guide/index.html index 769f57c55e..40b503bb8f 100644 --- a/files/zh-tw/web/javascript/guide/index.html +++ b/files/zh-tw/web/javascript/guide/index.html @@ -12,7 +12,7 @@ translation_of: Web/JavaScript/Guide

    本指南區分成以下數個章節: