zoukankan      html  css  js  c++  java
  • JS函数调用方式

    (1)作为函数
    在ECMAScript3和ECMAScript5中,调用上下文(this)是全局对象。在严格模式中,调用上下文是undefined
    (2)作为方法
    此时方法的上下文为该函数对象
    (3)作为构造函数
    构造函数初始化新创建的对象,并将这个对象作为其调用上下文,并用this引用这个新创建的对象。
    new o.m()中的this指向的是新创建的对象,而不是m。
    构造函数中的return语句没有返回值或者返回一个原始值,则忽略这个返回值,同时使用新对象作为调用结果
    var Create = function(book){
      this.book = book;
      //return ;    还是返回新创建的对象
      //return 1;   还是返回新创建的对象
      //return [1]; 此时返回[1]
    }
    (4)通过它们的apply(),call()间接调用
    注:作为嵌套的函数不会从调用它的函数中继承this。如果嵌套函数作为方法调用,this指向调用它的对象,否则this指向window或undfined。
    var o = {
      m: function(){
        var self = this;
        console.log(this === o);    //true
        f();

        function f() {
          console.log(this === o);  //false
          console.log(self === o);  //true
       }
    };
  • 相关阅读:
    HTML技巧: 语义化你的代码
    css sprite
    Redis主从复制原理
    idea修改快捷键
    Ubuntu14.20 安装docker,创建centos6.7容器,并访问centos容器
    [转]SQL 中 with as 的用法
    ftp与sftp及sftp和scp的区别
    Linux top 命令
    Linux free 命令
    ubuntu 源方式 安装jdk
  • 原文地址:https://www.cnblogs.com/wuzy/p/3094620.html
Copyright © 2011-2022 走看看