javascript - 如何仅对数组中的数值进行排序?

标签 javascript arrays sorting

var points = [2, a, t, 5, 4, 3]; 排序后: var points = [2, a, t, 3, 4, 5];

有什么帮助吗?因为我在 Adob​​e DC 项目上工作,所以可以使用旧式 javascript 代码发布您的帮助?

我的代码在那里:

var points = [t1, t2, t3, t4];
[t1, t2, t3, t4] = points;

var lucky = points.filter(function(number) {
  return isNaN(number) == false && number !=="" && number!== undefined;
});
points=lucky
points.sort(function(a, b){return a - b});

this.getField("Text6").value = points

但这只会从最小值到最大值排序并过滤其他字符...我需要保留其他字符和简短的数字...

最佳答案

var points = [2, "a", "t", 5, 4, 11, "", 3];
var insert = points.slice(0); // Clone points

// Remove all elements not a number
points = points.filter(function(element) {
  return typeof element === 'number';
});

// Sort the array with only numbers
points.sort(function(a, b) {
  return a - b;
});

// Re-insert all non-number elements
insert.forEach(function(element, index) {
  if (typeof element !== 'number') {
    points.splice(index, 0, element);
  }
});

console.log(points);

关于javascript - 如何仅对数组中的数值进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54689198/

相关文章:

javascript - 带有填充的 FabricJs Canvas 对象在调整大小时消失

javascript - Bootstrap,ng-repeat 中的数据切换,默认打开和/或绑定(bind)打开到数据

ios - Swift 2.1 初始化字符串数组的新方法?

java - 比较特定索引时数组循环不起作用

javascript - 在MySQL中选择多行的前十个条目

javascript - 使用 .sort() 和 .data() 对 IE11 和 Edge 中的 HTML 元素进行排序

c - 对结构体 C 的数组进行排序

C 这是什么排序算法?

bash - 区分大小写的排序 Unix Bash

arrays - 更好的 Swift 数组排序方法?