你认为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函数。
广告