CoffeeScript 中的類方法詳解
要理解 CoffeeScript 中的類方法,首先我們需要了解什麼是 CoffeeScript。CoffeeScript 是一種輕量級的程式語言,它編譯成 JavaScript,並且也受到 JavaScript、python、ruby、Haskell 等語言的啟發。接下來,我們將詳細討論它,然後我們將討論 CoffeeScript 中的類方法及其語法,並舉例說明並進行完整解釋,最後我們將進行總結。
CoffeeScript 簡介
正如我們上面所討論的,它是一種輕量級的程式語言,可以編譯成 JavaScript。它基本上是受 python、Ruby、Haskell 等語言影響,旨在使 JavaScript 更簡潔易讀。
CoffeeScript 的優點
這種語言的語法與 JavaScript 的語法類似。語法的簡潔性是這種程式語言的魅力所在。CoffeeScript 是一種非常易讀且簡單的程式語言。
與 JavaScript 不同,在宣告變數之前不需要使用 var 關鍵字。因此,它有助於防止軟體中出現作用域宣告問題。
分號、括號和花括號在 CoffeeScript 中沒有任何作用。取而代之的是,使用空格來區分函式、迴圈等中的程式碼。
與 JavaScript 相比,程式碼行數減少了一半。好處:程式碼越少,軟體就越簡單易懂。
CoffeeScript 為許多運算子提供了別名的概念,從而產生清晰易讀的程式碼。CoffeeScript 使程式設計變得簡單。
CoffeeScript 是一種穩定安全的程式語言,用於構建動態網頁。
CoffeeScript 中的類方法
類方法只不過是定義在類內部的變數。方法可以改變物件的狀態、解釋物件的特性,並充當物件的行為。方法也可以在物件中找到。
類內部的變數操作被稱為方法。方法能夠改變物件的 state,描述其屬性,並模擬物件的行為。物件也包含方法。物件的特性和操作。一個類可能有多個例項,並且在每種情況下,類屬性都將設定為適當的值。
方法有兩種型別:帶引數的方法和不帶引數的方法。當呼叫不需要引數的函式時,我們不需要擔心它。讓我們檢查一下在類中定義的兩種方法及其工作原理。
無引數方法
如果在呼叫時不需要外部資料,則可以建立不帶任何引數的函式。當用戶需要根據全域性變數或方法內的資料獲取輸出時,可以使用這些型別的函式或方法。讓我們看一個例子來更好地理解這個概念。
示例
在這個例子中,我們將建立一個類,並在類內部定義一個不帶任何引數的方法。
class class_name constructor: (@first_name,@last_name) -> console.log "Name of person is: " + @first_name + " " + @last_name first_Name: -> console.log "First name of person is: " + @first_name last_Name: -> console.log "Last name of person is: " + @last_name person1 = new class_name "Sam", "Sidhu" person1.first_Name() person1.last_Name()
編譯後,上述 CoffeeScript 生成以下 JavaScript 程式碼:
// Generated by CoffeeScript 2.4.1 (function() { var class_name, person1; class_name = class class_name { constructor(first_name, last_name) { this.first_name = first_name; this.last_name = last_name; console.log("Name of person is: " + this.first_name + " " + this.last_name); } first_Name() { return console.log("First name of person is: " + this.first_name); } last_Name() { return console.log("Last name of person is: " + this.last_name); } }; person1 = new class_name("Sam", "Sidhu"); person1.first_Name(); person1.last_Name(); }).call(this);
在上面的程式碼中,我們首先建立一個名為“class_name”的類,然後在類中定義建構函式,該建構函式將初始化類的物件。在類中,我們定義了兩個方法,它們將列印物件的姓和名(對於此類,物件將為人),並且它們不帶任何引數(如我們可以在程式碼中看到的),併產生輸出。
帶引數方法
大多數情況下,函式用於執行一些計算或結果,然後根據計算結果,函式將提供輸出。此外,為了動態執行,函式以引數的形式獲取一些外部資料是最好的方法。此外,帶引數的函式或方法可以處理全域性資料或外部作用域中的資料,例如物件的資料。讓我們看一個例子來更好地理解這個概念。
示例
在這個例子中,我們將建立一個類,並在類內部定義一個帶一些引數的方法,並根據這些引數提供輸出:
class class_name constructor: (@first_name,@last_name) -> console.log "Name of person is: " + @first_name + " " + @last_name age: (age) -> console.log "Age of : " + @first_name + " " + @last_name + " is:" + age first_Name: -> console.log "First name of person is: " + @first_name last_Name: -> console.log "Last name of person is: " + @last_name person1 = new class_name "Sam", "Sidhu" person1.first_Name() person1.last_Name() person1.age(22)
編譯後,上述 CoffeeScript 生成以下 JavaScript 程式碼:
// Generated by CoffeeScript 2.4.1 (function() { var class_name, person1; class_name = class class_name { constructor(first_name, last_name) { this.first_name = first_name; this.last_name = last_name; console.log("Name of person is: " + this.first_name + " " + this.last_name); } age(age) { return console.log("Age of : " + this.first_name + " " + this.last_name + " is: " + age); } first_Name() { return console.log("First name of person is: " + this.first_name); } last_Name() { return console.log("Last name of person is: " + this.last_name); } }; person1 = new class_name("Sam", "Sidhu"); person1.first_Name(); person1.last_Name(); person1.age(22); }).call(this);
在上面的程式碼中,我們首先建立一個名為“class_name”的類,然後在類中定義建構函式,該建構函式將初始化類的物件。在類中,我們定義了兩個方法,它們將列印物件的姓和名(對於此類,物件將為人),並且它們不帶任何引數,但還有一個第三個方法,它將帶一個引數,並且該函式將同時使用引數中的資料以及類的作用域中的資料。
結論
在本文中,我們瞭解到 CoffeeScript 是一種輕量級的程式語言,它編譯成 JavaScript,並且也受到 JavaScript、python、ruby、Haskell 等語言的啟發。類方法只不過是定義在類內部的變數。方法可以改變物件的狀態、解釋物件的特性,並充當物件的行為。方法也可以在物件中找到。方法有兩種型別:一種帶引數,另一種不帶任何引數。