js 数组中包含数组 排序
时间: 2023-09-06 08:01:55 浏览: 102
js数组排序
要对包含数组的 JavaScript 数组进行排序,可以使用`sort()`函数结合自定义的比较函数来实现。
比如,我们有一个数组`arr`,其中包含其他数组作为元素。现在我们想要对这些包含数组进行排序。我们可以使用`sort()`函数,并传入一个比较函数作为参数。
比较函数应该返回负数、零或正数,分别表示第一个参数小于、等于或大于第二个参数。这样`sort()`函数就会根据比较函数的返回值对数组进行排序。
比如,我们可以编写下面的比较函数来对包含数组的数组按照其中的第一个元素进行升序排序:
```javascript
function compare(a, b) {
const firstElementA = a[0];
const firstElementB = b[0];
if (firstElementA < firstElementB) {
return -1;
} else if (firstElementA > firstElementB) {
return 1;
} else {
return 0;
}
}
const arr = [[3, 1], [2, 4], [1, 2]];
arr.sort(compare);
```
经过以上代码,`arr`数组将会被排序为`[[1, 2], [2, 4], [3, 1]]`。
在这个例子中,比较函数会返回包含数组的第一个元素之间的差值:如果`firstElementA`小于`firstElementB`,则返回一个负数表示`a`应该排在`b`之前;如果`firstElementA`大于`firstElementB`,则返回一个正数表示`a`应该排在`b`之后;如果它们相等,则返回零表示它们相等。
通过传递这个比较函数给`sort()`函数,我们可以实现对包含数组的数组的排序操作。
阅读全文