js 数组排序

有这么一个节点对象,它的id属性为Ni,例如N1节点的id属性值为N1,N2的为N2,对于由这种节点对象组成的数组要怎么使得它按id排序,它的id不是纯数字类型,怎么才能排序成n1,n2...的效果?

阅读 3.6k
2 个回答
arr.sort(function (a, b) {
    var na = parseFloat(a.id.substring(1)),
        nb = parseFloat(b.id.substring(1));

    return na - nb;
});

想办法把字符串转换成数值就可以了嘛,比如N1 --> 1 N2 --> 2,然后再排呗

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题