javascript面向对象的函数内部调用函数或调用函数insede var

 13486099491_fb9570 发布于 2023-02-13 19:44

我试着理解javascript现在我真正想要实现的是这样的:

var data = Data.GetData();//with or without parameter Data.GetData(x)
//or
var data = Data.Row.GetData();

我从其他oop languange的理解我只是创建这样的类:

Class Data{
  public static String GetData()
  {
     return "data";
  }
}

所以我可以打电话:

String data = Data.GetData();
//or
Data _data = new Data();
String x = _data.GetData();

但是如何在JavaScript中?我想是这样的:

function Data(){
  function GetData(){
    retun "data";
  }
}

但它不起作用.:(请帮助我了解oop如何在javascript中使用示例代码:D

1 个回答
  • 在javascript中,您可以将函数声明为构造函数(通过确保它不返回任何内容),然后通过使用原型继承将该类的方法应用于其所有实例.

    function Data () {
    }
    Data.prototype.GetData = function () {
      return 'data';
    }
    

    你可以像这样使用它:

    var data = new Data();
    var str = data.GetData();
    

    如果你想要一个静态方法,你可以省略prototype关键字

    Data.GetData = function () { return 'data'; }
    

    相反,如果您的Data对象是单个对象,并且您不想重用其任何方法和成员,则只需将其声明为:

    var Data = {
      GetData: function () { return 'data'; }
    };
    

    然后呢

    Data.GetData();
    

    2023-02-13 19:46 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有