Chúng ta có một mảng chứa kiểu dữ liệu hỗn hợp Chuỗi và đánh số, chúng ta phải viết một hàm sắp xếp để sắp xếp mảng sao cho các giá trị NaN luôn ở cuối cùng.
Mảng phải chứa tất cả các số hợp lệ ở phía trước, theo sau là ký tự chuỗi, tiếp theo là NaN.
Mã cho điều này sẽ là -
const arr = [344, 'gfd', NaN, '', 15, 'f',176, NaN, 736, NaN, 872, 859, 'string', 13, 'new', NaN, 75]; const sorter = (a, b) => { if(a !== a){ return 1; }else if(b !== b){ return -1; } return typeof a === 'number' ? -1 : 1; }; arr.sort(sorter); console.log(arr);
Đầu ra
Đầu ra trong bảng điều khiển -
[ 75, 13, 859, 872, 736, 176, 15, 344, 'gfd', '', 'f', 'string', 'new', NaN, NaN, NaN, NaN ]