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

约扎维拉塔玛

我现在尝试理解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

乔·米尼奇诺(Joe Minichino)

在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();

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章