美文网首页
函数的属性和方法

函数的属性和方法

作者: 小冕 | 来源:发表于2018-05-16 10:07 被阅读0次

函数是对象,所以函数也有属性和方法。每个函数都包含两个属性:length和prototype。其中,length属性表示函数希望接收的命名参数的个数。

function sum(num1,num2){
  return num1+num2;
}

alert(sum.length);   // 2

每个函数都包含两个非继承而来的方法:apply()和call()。这两个方法的用途都是在特定的作用域中调用函数,实际上等于设置函数体内this对象的值。首先,apply()方法接收两个参数:一个是其中运行函数的作用域,另一个是参数数组。其中第二个参数可以是Array的实例,也可以是arguments对象。

function sum(num1,num2){
 return num1+num2;
}
function callSum1(num1,num2){
    return  sum.apply(this, arguments)
}
function callSum2(num1,num2){
return sum.apply(this,[num1,num2])
}
alert(callSum1(10,10));  //20
alert(callSum2(10,10));  //20

call()方法与apply()方法的作用相同,它们的区别仅在于接收参数的方式不同。对于call()方法而言,第一个参数是this值没有变化,变化的是其余参数都直接传递给函数。

function sum(num1,num2){
 return num1+num2
}
function callSum(num1,num2){
 return sum.call(this,num1,num2)
}
alert(callSum(10,10));   //20

相关文章

  • function 函数类型之prototype

    prototype 和 length 函数的属性和方法 ECMAScript 中函数是对象,因此也有属性和方法。每...

  • 刨了Function()函数对象的祖坟

    第一章:深入了解函数的属性和方法 知识点 函数也是对象 对象成员包括属性和方法 1. 函数对象的属性和方法详解 a...

  • 构造函数ES5和ES6对比

    封装: 1、通过构造函数添加属性和方法(即:通过this定义属性和方法) 缺点:通过this定义的属性和方法,我们...

  • 函数属性和方法

    我们大家都知道,一个函数它有属性和方法,每个函数都包含两个属性:length和prototype。 length属...

  • ES6中set和map数据结构的操作方法

    set的属性和方法: 属性: Set.prototype.constructor:构造函数,默认就是Set函数。 ...

  • 函数的属性和方法

    函数是对象,所以函数也有属性和方法。每个函数都包含两个属性:length和prototype。其中,length属...

  • 关于构造函数Array属性和方法总结

    @(JavaScript基础) 关于构造函数Array属性和方法总结 构造函数Array属性: Array.len...

  • C++基础继承(is-A)

    继承特点   子类拥有父类的所有属性和方法(除了构造函数和析构函数)。  子类可以拥有父类没有的属性和方法。 继承...

  • 贪吃蛇

    函数也是对象任何函数也有prototype属性,我们说只有对象才有属性和方法,所以函数也是对象,函数还有bind(...

  • JavaScript 构造函数私有、公有、静态、特权方法

    3. 构造函数的私有、公有、静态、特权方法 私有属性和方法创建:在构造函数内部创建的变量是私有属性,创建的函数是私...

网友评论

      本文标题:函数的属性和方法

      本文链接:https://www.haomeiwen.com/subject/gmdahftx.html