三七互娱笔试

一道关于链式调用的题目

// 使用构造函数的形式
function Hero(name) {
  this.name = name;
  console.log(name);
  return this;
}

Hero.prototype.kill = function () {
  console.log('kill');
  return this
}

Hero.prototype.sleep = function (time) {
  var start = new Date().getTime();
  console.log('Timeout');
  while((start + time * 1000) > new Date().getTime()) {

  }
  return this;
}

// 创建一个实例
var hero = function(name) { 
  return new Hero(name);
}
console.log(hero('Gping'));
hero("37er").kill(2).sleep(5).kill(1);
// 使用对象的形式
var Hero = function(text) {
    console.log('Hello ' + text)
    var obj = {
        kill: function(num) {
        if (num == 1) {
          console.log('kill');
        } else {
          console.log('kills');
        }
                return this;
    },
    sleep: function(time) {
      var start = new Date().getTime();
            console.log('timeOut');
            while((start + time*1000) > new Date().getTime()) {
        
            }
            return this;
    },
    recover: function(num) {
            console.log('recover ' + num);
            return this;
        }
    }
  return obj;
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容