如何在Javascript中创建C#对象之间的区别

时间:2015-09-30 13:44:11

标签: javascript c# arrays arraylist

我是C#开发人员,我正在学习Javascript。

  

我在C#上注意到创建对象的方法是这样的:

public class Member
{
    public string Name { get; set; }

    public int Age { get; set; }

    public string Sex { get; set; }

    public Member (string _name, int _age, string _sex)
    {
        Name = _name;
        Age = _age;
        Sex = _sex;
    }
}
  

在javascript上,我发现只有一种方法可以做到这一点。是这么多   不同,我没有找到另一种方式:

var Member = {Name:"John", Age:65, Sex:"Male"};

所以,接下来的疑问是我需要在桌子上使用它。所以我需要这些对象'Member'的数组。

通常情况下,我该怎么做?

  

C#

public ObservableCollection<Member> MyMembers = new ObservableCollection<Member>(){
new Member("Ryan",18,"Male"),
new Member("Gabriel",51,"Male"),
new Member("Samantha",14,"Female")
};
  

在Javascript上?

var Member1 = {Name:"Ryan", Age:18, Sex:"Male"}; 
var Member2 = {Name:"Gabriel", Age:51, Sex:"Male"}; 
var Member3 = {Name:"Samantha", Age:14, Sex:"Female"}; 
var MyMembers = [Member1, Member2, Member3]; 

var MyMembers = new Array(Member1, Member2, Member3);

我是正确的,或者我有更好的选择吗? 记得我会在桌子上展示它。在C#ObservableCollection上是最好的选择。

2 个答案:

答案 0 :(得分:0)

在Javascript中,你应该能够像在C#中那样做。只是实例化数组中的对象。

var MyMembers = [{stuff}, {stuff}, {stuff}];

此外,可以使用javascript中的构造函数定义实际的命名对象。看一下w3页面。

http://www.w3schools.com/js/js_object_definition.asp

答案 1 :(得分:0)

你也可以在JS中创建类似于类的东西。

var Member = function(name,age,sex){
    this.name = name;
    this.age = age;
    this.sex = sex;
}

然后初始化一个这样的实例:

var m = new Member('Ryan',21,'male')

有关更多信息,请查看JS OOP教程。 MDN是一个很好的来源,但如果它不能满足您的需求,只需谷歌另外一个。