对数组进行排序,不显示逗号

Sort array without displaying commas

本文关键字:显示 排序 数组      更新时间:2023-09-26

我是"最懂电脑的人完成任务"的最佳人选在我制作的网站上,我需要对大量的名字进行排序。名字经常变,很多人都会改。名字的数量也会改变,所以按数字索引也不是一件好事。

我发现的示例代码如下:

<script type="text/javascript">
var fruits = ["Banana<br />", "Orange<br />", "Apple<br />", "Mango<br />",];
document.write(fruits.sort());
</script>

除了逗号显示在网站上之外,其他情况都可以使用。这是不能接受的。我正在寻找一种方法,使逗号从网站显示时消失。

数组不是字符串,默认的转换方式是通过,连接元素。只需指定您自己的加入字符串即可:

var fruits = ["Banana<br />", "Orange<br />", "Apple<br />", "Mango<br />",];
document.write(fruits.sort().join('')); // Don't join by anything

sort方法返回已排序的数组。您可以将其应用于join方法,在输出之前使用分隔符连接此数组的所有元素:

document.write(fruits.sort().join(''));​

在这种情况下,之所以显示逗号,是因为您正在向文档中写入集合,因此会显示分隔符。为了避免这种情况,手动写出条目

for (var i = 0; i < fruits.length; i++) {
  document.write(fruits[i]);
}

注意:将数据与显示区分开通常是更好的做法。在这种情况下,您将数据(水果名称)与显示信息(<br/>)混合在一起。另一种考虑写这篇文章的方法是下面的

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
for (var i = 0; i < fruits.length; i++) {
  document.write(fruits[i]);
  document.write("<br/>");
}