你認為 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 函式。
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP