使用jQuery自定义一个工具函数,函数名为sort()。该函数功能是接收一个数组作为参数,然后对数组中所有元素从小到大进行排序,最后返回排序好的数组。

roujennie 2020-10-08 12:35:35
为什么我的代码输出不了?

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script src="js/jquery-3.2.1.min.js"></script>
<script src="js/jquery.max.js"></script>
</head>
<body>
<script>
(function($){
$.extend({
"sort":function(m,n){
return m-n;
})(jQuery)
$(function(){
var num=$.sort(1,50,20,30,5);
num.sort(sort);
console.log(num);
})
</script>

</body>
</html>
...全文
1329 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_50944805 2020-10-08
  • 打赏
  • 举报
回复
引用 楼主 ljn20010724 的回复:
为什么我的代码输出不了?

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<script src="js/jquery-3.2.1.min.js"></script>
		<script src="js/jquery.max.js"></script>
	</head>
	<body>
        <script>
            (function($){
                $.extend({
                    "sort":function(m,n){
						return m-n;
                      }// 写少了
                  })// 写少了
            })(jQuery) // 不要用立即执行函数,jq可能都没有加载好,最好向下面那个一样用$(function(){    })
            $(function(){
                var num=$.sort(1,50,20,30,5);
				num.sort(sort);
				console.log(num);
            })
        </script>

	</body>
</html>
weixin_50944805 2020-10-08
  • 打赏
  • 举报
回复


$(function(){
		$.extend({
				"sort":function(...num){ // 多个可以这样解析,变为数组[1,50,...]
						console.log(num)
						// 写排序方法,然后返回
						return num;
				}
		})
			var num=$.sort(1,50,20,30,5); // 你这传进去的也不是数组啊,数组是$.sort([1,50,20,30,5])
			// num.sort(sort); // 这里又干嘛的,num是数字类型,
			// 想要num.方法的话,需要把方法挂载在 
			// Number.prototype.sort = function(){
				// console.log(this) // this == num; 数字.sort();this就等于那个数字
				// return this // 返回值
			// }
			
			console.log(num);
			
			// js原生就有对数组排序的方法
			console.log([1,50,20,30,5].sort((i, v) => i - v)) // i - v:升序,v - i:降序
			
	})

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧