你認為JavaScript函式是物件方法嗎?


與其他語言相比,JavaScript的工作方式有所不同,尤其是在函式和方法之間感到困惑時。在本教程中,我們將學習JavaScript函式是否為物件方法。本教程中編寫的示例可以讓您更好地瞭解它們之間的區別以及哪一個對我們來說更方便。

什麼是JavaScript函式?

函式通常用於定義我們想要執行的特定任務。它是一組指令,每個函式都有其程式碼塊。函式還可以透過對這些引數執行所需的操作來擁有引數。

語法

下面給出JavaScript函式的語法。

function name_of_function(parameters){
   //body of function
      //scope of function
} 

什麼是方法?

方法類似於函式,但它始終為物件定義,這意味著它是物件的屬性。透過使用方法,我們可以操作物件的其他屬性。我們不能在物件的程式碼塊之外定義任何方法。

語法

下面給出JavaScript物件方法的語法。

Var  variable = {
   //properties
   Method : function()
   {
      //body of method
   }
}

函式和方法的區別

JavaScript函式不需要任何物件作為引用來呼叫,因為函式不與任何特定物件繫結。但是,在呼叫方法時,我們必須傳遞一個物件作為引用。該物件包含所有屬性,因此我們可以透過方法來操作它。

如果使用者想要賦值函式或方法返回的任何值,則在程式碼中呼叫(呼叫)它們的語法不同。

語法

下面給出呼叫函式的語法。

Var variable = name_of_funciton( parameter );
// calling the function
Name_of_function( parameter );

語法

下面給出呼叫物件方法的語法。

Var variable = obj.method(parameter);
//invoking the object an method
Obj.method(parameter);

在此語法中,“obj”是一個包含“method”作為屬性的物件。

示例

在下面的示例中,我們將建立物件 = 'info',函式 = 'getinfo'。然後我們將建立物件的以下屬性“name , IMDB , getname , getIMDB , information”。

此外,我們將呼叫函式和物件方法以進行演示。

<html> <head> </head> <body> <h2> Do you think JavaScript Functions are Object Methods? </h2> <div> <h4> When we call <i> functions </i> </h4> <p> getting info about series : <span id = "seriesfunction"> </span> </p> </div> <div> <h4> When we call <i> methods </i> </h4> <p> getting info about series : <span id = "seriesmethod" > </span> </p> </div> <script> //making an object var info = { name:"pending", IMDB:00, getname: function(NAME) { this.name=NAME; }, getIMDB: function(imdb) { this.IMDB=imdb; }, information: function() // this are methods of object info { return this.name + " " + "IMDB : " + this.IMDB; } }; info.getname('money_heist'); info.getIMDB(8.2); document.getElementById("seriesmethod").innerHTML = info.information(); //creating an function function getinfo(name_,imdb_rate) { let series_name=name_; let rate=imdb_rate; return series_name + " " + "IMDB : " + rate; } // assigning the value of function to the variable var series = getinfo('stranger_things',8.7); document.getElementById("seriesfunction").innerHTML = series; </script> </body> </html>

在上面的示例中,函式和方法的工作方式相同,但是定義方法和函式的方式不同。

因此,使用者瞭解了函式和方法如何以不同的方式工作相同。每種方法在處理同一元素的多個屬性時都有其自身的優勢,則方法可以有效地工作;如果使用者想要執行一些操作而不與任何物件屬性組合,則應使用JavaScript函式。

更新於:2022年8月2日

147 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.