Javascript排序数组两次

Javascript排序数组两次,javascript,jquery,arrays,sorting,Javascript,Jquery,Arrays,Sorting,如果我有一系列这样的位置: ["Roberts", "baltimore", "Maryland", "21212"], ["Adams", "baltimore", "Maryland", "21212"], ["Joes", "philadelphia", "Pennsylvania", "30333"], ["Carls", "new york", "New York", "40415"] 使用Javascript或Jquery,我将如何首先按状态,然后按名称对它们进行排序,从而得到以下

如果我有一系列这样的位置:

["Roberts", "baltimore", "Maryland", "21212"],
["Adams", "baltimore", "Maryland", "21212"],
["Joes", "philadelphia", "Pennsylvania", "30333"],
["Carls", "new york", "New York", "40415"]
使用Javascript或Jquery,我将如何首先按状态,然后按名称对它们进行排序,从而得到以下顺序:

["Adams", "baltimore", "Maryland", "21212"],
["Roberts", "baltimore", "Maryland", "21212"],
["Carls", "new york", "New York", "40415"],
["Joes", "philadelphia", "Pennsylvania", "30333"]
尝试此答案(请参见末尾),但需要明确的自定义条件:

“”“比较(对象1,对象2)
如果object1.state>object2.state,则object1大于(1)
如果object1.state 如果object1.name>object2.name,则object1大于(1)
如果object1.name 对象是相等的,或者至少不可根据您公开的标准进行排序。
“”“

(请注意,array.sort中的“array”指的是您的对象数组,前提是您的对象实际上具有字段名“name”和“state”,因为您没有实际指定它们-实际上它们没有字段,因此它们既不是对象也不是数组)。

尝试此答案(请参见末尾),但需要明确的自定义条件:

“”“比较(对象1,对象2)
如果object1.state>object2.state,则object1大于(1)
如果object1.state 如果object1.name>object2.name,则object1大于(1)
如果object1.name 对象是相等的,或者至少不可根据您公开的标准进行排序。
“”“

(请注意,array.sort中的“array”指的是您的对象数组,前提是您的对象实际上具有字段名“name”和“state”,因为您没有实际指定它们-实际上它们没有字段,因此它们既不是对象也不是数组)。

尝试此答案(请参见末尾),但需要明确的自定义条件:

“”“比较(对象1,对象2)
如果object1.state>object2.state,则object1大于(1)
如果object1.state 如果object1.name>object2.name,则object1大于(1)
如果object1.name 对象是相等的,或者至少不可根据您公开的标准进行排序。
“”“

(请注意,array.sort中的“array”指的是您的对象数组,前提是您的对象实际上具有字段名“name”和“state”,因为您没有实际指定它们-实际上它们没有字段,因此它们既不是对象也不是数组)。

尝试此答案(请参见末尾),但需要明确的自定义条件:

“”“比较(对象1,对象2)
如果object1.state>object2.state,则object1大于(1)
如果object1.state 如果object1.name>object2.name,则object1大于(1)
如果object1.name 对象是相等的,或者至少不可根据您公开的标准进行排序。
“”“


(请注意,array.sort中的“array”指的是您的对象数组,前提是您的对象实际上有字段名“name”和“state”,因为您没有实际指定它们-实际上它们没有字段,所以它们不是对象或数组)。

如果我们从实际数组开始:

var orig = [
  ["Roberts", "baltimore", "Maryland", "21212"],
  ["Adams", "baltimore", "Maryland", "21212"],
  ["Joes", "philadelphia", "Pennsylvania", "30333"],
  ["Carls", "new york", "New York", "40415"]
];
我们可以这样分类:

var sorted = orig.sort(
  function(a, b) {
    // compare states
    if (a[2] < b[2])
      return -1;
    else if (a[2] > b[2])
      return 1;

    // states were equal, try names
    if (a[0] < b[0])
      return -1;
    else if (a[0] > b[0])
      return 1;

    return 0;
  }
);

示例:

如果我们从实际数组开始:

var orig = [
  ["Roberts", "baltimore", "Maryland", "21212"],
  ["Adams", "baltimore", "Maryland", "21212"],
  ["Joes", "philadelphia", "Pennsylvania", "30333"],
  ["Carls", "new york", "New York", "40415"]
];
我们可以这样分类:

var sorted = orig.sort(
  function(a, b) {
    // compare states
    if (a[2] < b[2])
      return -1;
    else if (a[2] > b[2])
      return 1;

    // states were equal, try names
    if (a[0] < b[0])
      return -1;
    else if (a[0] > b[0])
      return 1;

    return 0;
  }
);

示例:

如果我们从实际数组开始:

var orig = [
  ["Roberts", "baltimore", "Maryland", "21212"],
  ["Adams", "baltimore", "Maryland", "21212"],
  ["Joes", "philadelphia", "Pennsylvania", "30333"],
  ["Carls", "new york", "New York", "40415"]
];
我们可以这样分类:

var sorted = orig.sort(
  function(a, b) {
    // compare states
    if (a[2] < b[2])
      return -1;
    else if (a[2] > b[2])
      return 1;

    // states were equal, try names
    if (a[0] < b[0])
      return -1;
    else if (a[0] > b[0])
      return 1;

    return 0;
  }
);

示例:

如果我们从实际数组开始:

var orig = [
  ["Roberts", "baltimore", "Maryland", "21212"],
  ["Adams", "baltimore", "Maryland", "21212"],
  ["Joes", "philadelphia", "Pennsylvania", "30333"],
  ["Carls", "new york", "New York", "40415"]
];
我们可以这样分类:

var sorted = orig.sort(
  function(a, b) {
    // compare states
    if (a[2] < b[2])
      return -1;
    else if (a[2] > b[2])
      return 1;

    // states were equal, try names
    if (a[0] < b[0])
      return -1;
    else if (a[0] > b[0])
      return 1;

    return 0;
  }
);


示例:

结果列表似乎没有按状态排序。数据似乎没有任何JS数据格式。您遇到了什么问题?读取数据存储在哪个文件中?解析自定义数据格式?查找数组排序方法的文档?嗯,这不是有效的JavaScript。已被询问过很多次。。。结果列表似乎没有按状态排序。数据似乎没有任何JS数据格式。您有什么问题?读取数据存储在哪个文件中?解析自定义数据格式?查找数组排序方法的文档?嗯,这不是有效的JavaScript。已被询问过很多次。。。结果列表似乎没有按状态排序。数据似乎没有任何JS数据格式。您有什么问题?读取数据存储在哪个文件中?解析自定义数据格式?查找数组排序方法的文档?嗯,这不是有效的JavaScript。已被询问过很多次。。。结果列表似乎没有按状态排序。数据似乎没有任何JS数据格式。您有什么问题?读取数据存储在哪个文件中?解析自定义数据格式?查找数组排序方法的文档?嗯,这不是有效的JavaScript。已被询问过很多次。。。