在Javascript中按字符串和数字属性对JSON数组排序

在Javascript中按字符串和数字属性对JSON数组排序,javascript,arrays,json,sorting,Javascript,Arrays,Json,Sorting,对JSON数组的结果进行排序的最佳方法?我需要按customer重新订购,然后invoice将所有客户与升序invoice值放在一起。与SQL相同的是:SELECT*FROM表ORDER BY customer,invoice ASC。以下是尝试: var值=[]; for(json格式的var发票){ push(json[invoice]); } var str=values.sort().join('\n'); console.log(str); var json=[{ “自动编号”:“2

对JSON数组的结果进行排序的最佳方法?我需要按
customer
重新订购,然后
invoice
将所有客户与升序
invoice
值放在一起。与SQL相同的是:
SELECT*FROM表ORDER BY customer,invoice ASC
。以下是尝试:

var值=[];
for(json格式的var发票){
push(json[invoice]);
}
var str=values.sort().join('\n');
console.log(str);
var json=[{
“自动编号”:“26”,
“日期”:“2017-04-17”,
“客户”:“jad Rasul\r\n”,
“地址”:“华盛顿特区20017”,
“发票”:“20170412”,
“销售”:“450.00”,
“已付”:“0.00”,
“欠款”:“450.00”,
“税”:“0.00”,
“杂项”:“2017-04-17 15:35:08”,
“客户id”:“16”,
“产品”:“小时费率”,
“说明”:“业务费率:咨询/人工/安装”,
“成本”:“150.00”,
“数量”:“3”,
“价格”:“450.00”,
“时间戳”:“2017-04-17 15:35:08”
},
{
“自动编号”:“27”,
“日期”:“2017-07-31”,
“客户”:“jad Rasul\r\n”,
“地址”:“华盛顿特区20017”,
“发票”:“20170731”,
“销售”:“300.00”,
“已付”:“0.00”,
“欠款”:“300.00”,
“税”:“0.00”,
“杂项”:“2017-07-31 14:19:02”,
“客户id”:“19”,
“产品”:“小时费率”,
“说明”:“业务费率:咨询/人工/安装”,
“成本”:“150.00”,
“数量”:“2”,
“价格”:“300.00”,
“时间戳”:“2017-08-01 17:19:02”
},
{
“自动编号”:“31”,
“日期”:“2018-06-02”,
“客户”:“jad Rasul\r\n”,
“地址”:“华盛顿特区瓦努姆街1160号114\r\nWashington,DC 20017\r\n\t\t\t”,
“发票”:“20180611”,
“销售”:“300.00”,
“已付”:“0.00”,
“欠款”:“300.00”,
“税”:“0.00”,
“杂项”:“2018-07-02 15:13:34”,
“客户id”:“22”,
“产品”:“小时费率”,
“说明”:“业务费率:咨询/人工/安装”,
“成本”:“150.00”,
“数量”:“2”,
“价格”:“300.00”,
“时间戳”:“2018-07-02 15:13:34”
},
{
“自动编号”:“90”,
“日期”:“2017-02-05”,
“客户”:“jad Rasul”,
“地址”:“华盛顿特区20017”,
“发票”:“20170205”,
“销售”:“450.00”,
“已付”:“150.00”,
“欠款”:“300.00”,
“税”:“2.00”,
“杂项”:“2017-02-05 20:20:25”,
“客户id”:“1”,
“产品”:“小时费率”,
“说明”:“业务费率:咨询/人工/安装”,
“成本”:“150.00”,
“数量”:“3”,
“价格”:“450.00”,
“时间戳”:“2019-02-05 02:22:47”
},
{
“autonum”:“91”,
“日期”:“2017-02-05”,
“客户”:“jad Rasul”,
“地址”:“华盛顿特区20017”,
“发票”:“20170205”,
“销售”:“300.00”,
“已付”:“50.00”,
“欠款”:“250.00”,
“税”:“2.00”,
“杂项”:“2017-02-05 20:21:18”,
“客户id”:“2”,
“产品”:“小时费率”,
“说明”:“业务费率:咨询/人工/安装”,
“成本”:“150.00”,
“数量”:“2”,
“价格”:“300.00”,
“时间戳”:“2019-02-05 02:22:47”
},
{
“自动编号”:“43”,
“日期”:“2018-11-12”,
“客户”:“jad Rasul”,
“地址”:“华盛顿特区20017\r\n\t\t\t”,
“发票”:“20181024”,
“销售”:“893.00”,
“已付”:“300.00”,
“欠款”:“593.00”,
“税”:“0.00”,
“杂项”:“2018-11-12 18:32:13”,
“客户id”:“27”,
“产品”:“Win10密钥”,
“说明”:“OEM Windows 10 Home,64位,1-Pack,DVD”,
“成本”:“98.99”,
“数量”:“1”,
“价格”:“98.99”,
“时间戳”:“2018-11-12 18:32:13”
},
{
“autonum”:“89”,
“日期”:“2019-02-25”,
“客户”:“jad Rasul”,
“地址”:“华盛顿特区20017\r\n地址114”,
“发票”:“20190225”,
“销售”:“375.00”,
“已付”:“0.00”,
“欠款”:“375.00”,
“税”:“0.00”,
“杂项”:“2019-02-26 02:22:47”,
“客户id”:“56”,
“产品”:“小时费率”,
“说明”:“商业费率-Comc后的网络故障排除和修复”,
“成本”:“150.00”,
“数量”:“3”,
“价格”:“375.00”,
“时间戳”:“2019-02-26 02:22:47”
},
{
“自动编号”:“33”,
“日期”:“2018-09-02”,
“客户”:“波托马克”\r\n,
“地址”:“马里兰州大马士革20872\t\t\t”,
“发票”:“20180902”,
“销售”:“467.00”,
“已付”:“0.00”,
“欠款”:“467.00”,
“税”:“0.00”,
“杂项”:“2018-09-02 22:44:09”,
“客户id”:“23”,
“产品”:“小时费率”,
“说明”:“商用摄像机安装/安装/密封”,
“成本”:“150.00”,
“数量”:“2”,
“价格”:“300.00”,
“时间戳”:“2018-09-02 22:44:09”
},
{
“自动编号”:“30”,
“日期”:“2017-08-14”,
“客户”:“Ann Frank\r\n”,
“地址”:“马里兰州埃利科特市21043\r\n\r\n\t\t\t”,
“发票”:“20170814”,
“销售”:“350.00”,
“已付”:“0.00”,
“欠款”:“350.00”,
“税”:“0.00”,
“杂项”:“2017-08-1417:56:52”,
“客户id”:“21”,
“产品”:“小时费率”,
“说明”:“居住费率:人工/安装:6基德i12010S 10年sm”,
“成本”:“350.00”,
“数量”:“1”,
“价格”:“350.00”,
“时间戳”:“2017-08-1417:56:52”
},
{
“自动编号”:“21”,
“日期”:“2017-03-22”,
“客户”:“自行车音乐\r\n”,
“地址”:“梅里车站”,
“发票”:“20160929”,
“销售”:“2416.00”,
“已付”:“1000.00”,
“欠款”:“1416.00”,
“税”:“0.00”,
“杂项”:“2017-03-22 19:51:00”,
“客户id”:“15”,
“产品”:“家得宝”,
“说明”:“家得宝货架/支架/支架/油漆用品”,
“成本”:“128.50”,
“数量”:“1”,
“价格”:“128.50”,
“时间戳”:“2017-03-22 19:51:00”
},
{
“autonum”:“83”,
“日期”:“2019-02-07”,
“客户”:“自行车音乐”,
“地址”:“梅里车站”,
“发票”:“20190207”,
“销售”:“95.00”,
“已付”:“0.00”,
“欠款”:“95.00”,
“税”:“0.00”,
“杂项”:“2019-02-15 20:57:54”,
“客户id”:“50”,
“产品”:“小时费率”,
“说明”:“住宅价格:咨询/人工/安装”,
“成本”:“95.00”,
“数量”:“1”,
“价格”:“95.00