首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何创建一个包含3个学生的数组,并将其按名字和nid排序

如何创建一个包含3个学生的数组,并将其按名字和nid排序
EN

Stack Overflow用户
提问于 2017-04-07 06:49:42
回答 1查看 206关注 0票数 1

我需要帮助创建一个对象“学生”的3个属性:名字,姓氏,NID (5位数)。

创建一个包含3个学生的数组"myclass“。

用Firstname对我的类排序。

用NID分类我的类。

我已经设置了一些,但是我对数组和对象不太了解。需要帮助做正确的方法,并解释

代码语言:javascript
复制
var student = (firstname, lastname, nid) {
  this.firstname = firstname;
  this.lastname = lastname;
  this.nid = nid;
  this.myclass = myclass;
}

var myclass = {
  "myclass": {
    student.firstname: "Matthew",
    student.lastname: "Stone",
    student.nid: 458293
  },

  "myclass": {
    student.firstname: "Arian",
    student.lastname: "Minaie",
    student.nid: 891023
  },

  "myclass": {
    student.firstname: "Pelin",
    student.lastname: "Schvechsky",
    student.nid: 496054
  }

}

function myFunction1() {
  myclass.sort();
  document.getElementById("Post").innerHTML = firstname;
}

function myFunction2() {
  myclass.sort();
  document.getElementById("Post").innerHTML = nid;
}
代码语言:javascript
复制
<p id="Post"></p>

<button onclick="myFunction1()">Sort Alphabetically by First Name!</button>
<button onclick="myFunction2()">Sort Numerically by NID!</button>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-07 07:13:25

您可以为学生使用构造函数并为学生创建新实例。然后,您需要根据想要的属性对数组进行排序。

代码语言:javascript
复制
function Student(firstname, lastname, nid) {
    this.firstname = firstname;
    this.lastname = lastname;
    this.nid = nid;
}

function sortByFirstnameAsc() {
    myClass.sort(function (a, b) {
        return a.firstname.localeCompare(b.firstname);
    });
    document.getElementById("Post").innerHTML = JSON.stringify(myClass, 0, 4);
}

function sortByNIDAsc() {
    myClass.sort(function (a, b) {
        return a.nid - b.nid;
    });
    document.getElementById("Post").innerHTML = JSON.stringify(myClass, 0, 4);
}

var myClass = [
        new Student("Matthew", "Stone", 458293),
        new Student("Arian", "Minaie", 891023),
        new Student("Pelin", "Schvechsky", 496054)
    ];
代码语言:javascript
复制
<button onclick="sortByFirstnameAsc()">Sort Alphabetically by First Name!</button>
<button onclick="sortByNIDAsc()">Sort Numerically by NID!</button>
<pre id="Post"></pre>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43271467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档