javascript - JS直接调用对象里的属性,不想NEW怎么写

查看:69
本文介绍了javascript - JS直接调用对象里的属性,不想NEW怎么写的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

s = function(){
    this.a=1
}
alert(s.a);

这么些是错误的,怎样能实现不用new直接拿到a的值?
要求是不能修改s的所有

解决方案

  s = function() {
    this.a = 1;
  };
s();
alert(a);

不new不就成了个全局函数么 this.a也成了全局变量

针对楼主提出的需求改为如下

  obj = {
    'cc': 777
  };

  bo = {
    'set': function() {
      this.bb = 555;
      return this.cc; //输出不了CC咋办
    },
    'aa': 123,
    'bb': 234
  };
  Object.setPrototypeOf(bo, obj);
  console.log(bo.set());

我怎么记得楼主昨天好像问了个完全一样的问题?

这篇关于javascript - JS直接调用对象里的属性,不想NEW怎么写的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆