`

JS 最少代码实现数字排序

阅读更多
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
var n = ["10", "5", "40", "25", "100", "1"];

function sortNumber(a, b){
	return a - b;
}

console.info(n.sort(sortNumber));

//直接一行代码实现,为了方便查看采用了缩进
function sortArr(arr) {
    return arr.sort(function(a, b) {
        return a - b;
    });
}
console.info(sortArr(n));


/**
 * a - b 的结果有三种 , 正数、负数、零而从javascript的弱类型转换中我们可以知道,
 * 当数值为负数和零的情况下会被转义为 false,正数会被转义为 true。
 * n.sort的传参是 布尔型的,因此当你 return a-b;时 接受到的参数将是 true,false;
 * 而sort方法本身会根据传参的 true 和 false 决定是否交换相邻两个元素的位置。
 * */
</script>
</body>
</html>

 

效果图:

 

偶优化更简洁的写法:

console.info(["16", "45", "40", "25", "100", "77"].sort(function(a, b){return a - b;}));
console.info([16, 45, 40, 25, 100, 77].sort(function(a, b){return a - b;}));

 

感谢群友(大风)提出更简洁的写法:

console.info([16, 45, 40, 25, 100, 77].sort((a,b)=>a-b));

 

感谢群友(进口熊猫)提出简洁的写法:

console.info([16, 45, 40, 25, 100, 77].sort((a,b)=>{return a-b}));

 

 

 

 

 

 

  • 大小: 9.7 KB
1
0
分享到:
评论

相关推荐

    JS实现最简单的冒泡排序算法

    JavaScript代码实现冒泡排序算法如下: ```javascript function bubbleSort(arr) { var len = arr.length; for (var i = 0; i ; i++) { for (var j = 0; j ; j++) { if (arr[j] &gt; arr[j + 1]) { // 相邻元素...

    算法JavaScript实现

    在JavaScript中,我们可以通过迭代或递归来实现二分查询,这要求对数组的排序和边界条件有清晰的理解。二分查询的时间复杂度为O(log n),因此在处理大量数据时非常高效。 总结来说,"算法JavaScript实现"这个主题...

    JavaScript算法源代码(例如:二叉搜索树、笛卡尔乘积、线性搜索、存储桶排序、DFS、 Kruskal算法、欧几里,等等)

    JavaScript算法源代码(例如:二叉搜索树、笛卡尔乘积、线性搜索、存储桶排序、DFS、 Kruskal算法、欧几里,等等) 链表、双链表、队列、Stack、哈希表、堆 - 最大和最小堆、优先队列、Trie、树、二叉搜索树、AVL树...

    pushPlateGame_HTML实现数字推盘游戏_

    在实际开发中,为了使代码更加整洁和易于维护,我们可以采用模块化的设计思路,将HTML结构、CSS样式和JavaScript逻辑分别写入不同的文件,如index.html、style.css和script.js。这样,每个部分都可以独立管理和测试...

    Node.js-pypette一个让管道构建变得简单的模块允许用户以最少的指令来控制流量

    1. **简单易用**:`pypette` 的设计哲学是使用户能够通过最少的代码实现复杂的管道逻辑。它提供了丰富的内置函数和操作符,使得管道构建变得直观且高效。 2. **可组合性**:`pypette` 支持模块化设计,你可以将小的...

    网关代码库:企业微信消息推送代码库:数据库RestAPI代码库.zip

    - **分页与排序**:提供接口支持分页查询和数据排序,提升用户体验。 - **API版本控制**:可能采用了版本控制策略,以应对未来接口的修改和扩展。 - **数据库连接池**:使用如HikariCP、Druid等数据库连接池,...

    Algorithm-js-algorithms.zip

    在这个"js-algorithms-master"文件夹中,很可能包含了一系列JavaScript实现的常见算法,如排序算法(快速排序、归并排序、冒泡排序等)、搜索算法(二分查找、线性查找等)、数据结构(栈、队列、链表、树、图等)...

    sorter:排序可视化器。 玩6种算法。 播放或暂停排序,返回一些步骤或继续。 使用React和setTimeouts构建。 使用最少的animejs

    关于排序算法,"Sorter"可能包含了经典的排序算法,如冒泡排序、选择排序、插入排序、快速排序、归并排序和堆排序。每种算法都有其独特的逻辑和性能特点,通过可视化,用户可以直观地比较它们的效率和行为差异。 ...

    jquery.autocomplete.js 自动补全插件实例

    3. **配置项**:`jQuery.autocomplete.js`支持丰富的配置选项,比如`minLength`(触发自动补全的最少字符数)、`delay`(延迟多久后触发自动补全)、`sortFunction`(自定义排序函数)等。通过调整这些参数,可以...

    water_sort_solver:一个简单的水排序益智游戏求解器

    通过理解这个水排序求解器的工作原理,我们可以学习到如何运用DFS解决实际问题,以及如何在JavaScript中实现这一过程。虽然它可能不提供最优化的解决方案,但这个求解器无疑为我们提供了理解和解决复杂问题的新视角...

    js代码-200608-矩形覆盖

    在实际编码中,`main.js` 文件很可能是实现上述算法的JavaScript代码,它可能包含了矩形的定义、矩形操作函数(如合并、比较等)、以及覆盖算法的实现。`README.txt` 文件则可能包含了问题描述、算法思路、使用说明...

    华为OD机试C卷- 文件缓存系统(Java & JS & Python).md-私信看全套OD代码及解析

    - 使用 `PriorityQueue&lt;FileInfo&gt;` 来维护一个最小堆,用于根据访问次数和访问时间自动排序,从而方便地移除最旧最少访问的文件。 #### Java示例代码解析 下面是一个简单的 Java 实现示例,展示了如何设计和实现...

    前端项目-sortable.zip

    这个项目旨在帮助开发者轻松实现对表格数据的排序功能,提升用户体验。下面将详细介绍这个项目的相关知识点。 1. **Sortable库**:Sortable是一个轻量级的JavaScript库,专门用于实现DOM元素的拖放排序,尤其适用于...

    lrucacheleetcode-leetcode-js:leetcode问题的Javascript解决方案

    通过阅读和学习这些代码,你可以深入理解LRU缓存的工作原理,掌握二分查找、数字到单词转换、位运算以及摆动排序的实现细节。同时,这也是一个很好的实践案例,展示了如何用JavaScript解决实际问题。

    有赞2019校招前端笔试.docx

    本资源涉及到多个领域的知识点,包括算法、数据结构、计算机网络、操作系统、JavaScript 等。 首先,第一个问题讨论了在一个长度为 n 的有序整数数组中判断一个元素是否出现超过 n/2 次的最少比较次数。这个问题...

    easyui相关功能整合的一个小例子

    EasyUI 的核心思想是“写最少的代码,做最多的事情”,它极大地简化了前端开发工作。 **树形结构** 在 EasyUI 中,是通过 `datagrid` 和 `treegrid` 实现的。`treegrid` 结合了表格和树的特点,可以展示层次化的...

Global site tag (gtag.js) - Google Analytics