zoukankan      html  css  js  c++  java
  • 函数的属性、方法和构造函数

    函数也是对象。

    属性:arguments.length表示实际传入的实参个数,arguments.callee.length表示期望传入的实参个数,eg:

        function check(args){

          var actual = args.length;

          var expected = args.callee.length;

          if(actual !== expected) {

            throw Error("实参个数和期望参数个数不一致");

          }

        }

        function f(x,y,z){

          check(arguments);//检查

        }

    方法:call和apply方法,其作用基本相同,都可以用来代替另一个对象调用一个方法。其实就是更改对象的内部指针,即改变对象(包括函数)的this指向的内容。

        对于apply和call两者在作用上是相同的,但两者在参数上有区别的。call([thisObj[,arg1[, arg2[, [,.argN]]]]])   apply([thisObj[,argArray]]) call函数和apply方法的第一个参数都是要传入给当前对象的对象,及函数内部的this。

       bind方法,作用是将函数绑定至某个对象。但bind是ECMAScript5新增的方法。

       

    function bind(f,o){
      if(f.bind) {
        return f.bind(o);
      }
      else return function() {
        return f.apply(o,arguments);          
      }      
    }
  • 相关阅读:
    Eclipse/STS 常用快捷键
    Git代码管理常用命令
    Git命令
    Atom python版本的切换
    robot Frame之文件上传和下载
    ride打开后,log和report置灰的解决办法
    Python2和Python3共存下使用robotframework
    selenium+python
    firefox上安装selenium ide失败
    软件测试知识点补充1
  • 原文地址:https://www.cnblogs.com/rellame/p/5276702.html
Copyright © 2011-2022 走看看