javascript 数组排序发现一个我原来不知道的事情:
test1.html
<
html
>
<
body
>
<
script
type
="text/javascript"
>
var
y
=
new
Array(
10
,
30000
,
12
);
y.sort();
alert(y);
</
script
>
</
body
>
</
html
>
排序结果正确(按我自认为从小到大的顺序,暂且把这种观点认为是正确的)。
test2.html
<
html
>
<
body
>
<
script
type
="text/javascript"
>
var
y
=
new
Array(
36000
,
500
,
10100
);
y.sort();
alert(y);
</
script
>
</
body
>
</
html
>
排序结果不正确。
当时就纳闷了,随后发现他是按照首字母来排序的。我服了javascript。
随后查看手册解释如下:
sort 方法
返回一个元素已经进行了排序的 Array 对象。
arrayobj.sort(sortfunction)
参数
arrayObj
必选项。任意 Array 对象。
sortFunction
可选项。是用来确定元素顺序的函数的名称。如果这个参数被省略,那么元素将按照 ASCII 字符顺序进行升序排列。
唉,错怪javascript了,本来人家是说清楚了的。只是我没有看手册,觉得java程序里就直接用sort对int 数组排序。没有带什么参数的。
终归一句话,我没有仔细看书啊。
随后加入:
test2.html
<
html
>
<
body
>
<
script
type
="text/javascript"
>
function
AscSort(x, y)
{
return
x
==
y
?
0
: (x
>
y
?
1
:
-
1
);
}
function
DescSort(x, y)
{
return
x
==
y
?
0
: (x
>
y
?
-
1
:
1
);
}
var
y
=
new
Array(
36000
,
500
,
10100
);
y.sort(AscSort);
alert(y);
</
script
>
</
body
>
</
html
>
便得到我所谓的正确排序了。呵呵。
于是怀疑java中也不是我想像中的那么个用法,马上用记事本写了个程序,我一般家里电脑不装IDE ,基本不是用来编程的。所以也没有自动提示之类的。
import
java.util.
*
;
public
class
test
{
public
static
void
main(String []args)
{
int
[] x
=
new
int
[]
{
1
,
2
,
3
,
9
,
4
}
;
Arrays.sort(x,
0
,x.length);
for
(
int
i
=
0
;i
<
x.length;i
++
)
{
System.out.println(x[i]);
}
}
}
顺利通过,不过通过之前还是发生过小错误,那就是直接用了x.sort.唉,看来我还是应该反复复习老知识啊。自从转行写JSP 后(而其中我基本使用JSTL不写一行<%%>所以知识都忘了些。)
特此总结,记录。希望日后能仔细点。
分享到:
相关推荐
JavaScript 是一种广泛使用的脚本语言,主要用于网页和Web应用程序的客户端开发。 JavaScript(简称JS)是一种轻量级、解释型、动态类型的脚本语言,主要用于网页前端开发,但也被广泛用于服务器端和移动应用开发。...
在JavaScript中,数组排序是常见的操作,涉及到多种不同的算法,每种算法有着不同的效率和适用场景。本文将总结六种常见的排序算法,并提供相应的代码示例。 首先,我们来看看希尔排序(Shell Sort),这是一种改进...
JavaScript数组排序函数是JavaScript编程语言中用于对数组元素进行排序的标准方法。数组的sort方法可以对数组中的元素进行排序,其默认排序行为是按照字符串的Unicode码点顺序进行排序,也就是说,它会将数组元素...
JavaScript数组排序汇总主要涉及到四种经典的排序算法:冒泡排序、快速排序、插入排序和希尔排序。这些算法在处理数组时有着不同的效率和应用场景。 1. **冒泡排序**(Bubble Sort): 冒泡排序是一种简单的排序...
在这个“17 - 数组排序.rar”压缩包文件中,很可能是包含了关于JavaScript数组排序方法的详细讲解和示例代码。 JavaScript提供了内置的`Array.prototype.sort()`方法来对数组进行排序。这个方法接受一个可选的比较...
在学习JavaScript中,做的笔记,关于数组排序的,具体是按字母升序排序,按数字升序或降序排序。如有需要,请自行下载。
Javascript 数组及其操作 Javascript 数组是一种基本的数据结构,用于存储和操作多个值。数组是一种复杂的数据类型,可以存储不同的数据类型,如数字、字符串、对象等。 创建数组 在 Javascript 中,可以使用三种...
为了应对不同场景下的排序需求,本文将介绍一个自定义的JavaScript函数,该函数支持对数组或对象进行排序,并且能够根据数组或对象中嵌套的任意深度的子键进行排序。以下是对该函数及其使用方法的详细解析。 函数...
在JavaScript中,数组排序是通过`Array.prototype.sort()`方法实现的。默认情况下,`sort()`函数会按照字典顺序对数组中的元素进行排序,这在处理数字时可能不会得到预期的结果。例如,数组`[2, 98, 34, 45, 78, 7, ...
JavaScript中的数组排序功能主要通过`Array.prototype.sort()`方法实现,这个方法可以对数组中的元素进行排序,无论是简单数据类型还是复杂的数据结构如多维数组或包含对象的数组。`sort()`方法的核心在于可选的`...
JavaScript 提供了内置的 `sort()` 函数来对数组进行排序,但在某些情况下,这个函数可能无法满足我们的需求,比如当数组元素为数字且需要按照数值大小而非字典顺序排序时。 `sort()` 函数默认将数组元素视为字符串...
JavaScript提供了内置的`sort()`函数,它默认按照字典顺序(即字符串比较规则)对数组元素进行排序,这在处理数字数组时可能会导致错误的结果。为了正确地对数字数组进行排序,我们需要自定义排序算法,如在提供的...
总结来说,`sort`和`reverse`是JavaScript数组对象的两个非常实用的方法。`reverse`方法通过调换数组元素的顺序来反转数组,而`sort`方法则通过比较函数来实现数组的排序。在实际开发中,合理地使用这两个方法可以极...
为普通数组和对象数组排序,对象数组排序时,可指定排序所依据的对象属性,汉字将以汉语拼音为序。
在JavaScript中,数组排序是常见的操作,它允许开发者以特定的顺序重新排列数组中的元素。数组排序有两个主要的方法:reverse()和sort()。...正确使用这两个方法,可以在处理JavaScript数组时提供极大的便利。