如何在JavaScript中对字符串排序?

2021年3月12日15:12:52 发表评论 1,513 次浏览

我们可以通过以下描述的方法对JavaScript中的字符串进行排序:

  • 使用sort()方法
  • 使用循环

使用sort()方法:在这种方法中, 我们使用预定义分类()JavaScript的方法来对字符串数组进行排序。仅当字符串是字母时才使用此方法。如果将数字存储在数组中并应用此方法, 则会产生错误的结果。

例子:

原始字符串Suraj, Sanjeev, Rajnish, Yash, Ravi排序后的Rajnish, Ravi, Sanjeev, Suraj, Yash原始字符串40、100、1、5、25、10排序后的1、10、100、25、40、5

下面的程序说明了上述方法:

程序:

<script>
// JavaScript code to sort strings
      
// Original string
var string = [ "Suraj" , "Sanjeev" , "Rajnish" , "Yash" , "Ravi" ];
      
// Print original string array
document.write( "Original String</br>" );
document.write(string);
      
document.write( "</br>" );
      
// Use sort() method to sort the strings
string.sort();
      
document.write( "</br>After sorting</br>" );
      
// Print sorted string array
document.write(string);
      
</script>

输出如下:

Original String
Suraj, Sanjeev, Rajnish, Yash, Ravi

After sorting
Rajnish, Ravi, Sanjeev, Suraj, Yash

使用循环:

我们将使用一种简单的排序方法对字符串进行排序。在此方法中, 我们将使用循环, 然后比较每个元素并将字符串放在其正确位置。在这里, 我们可以将数字存储在数组中, 然后应用此方法对数组进行排序。

例子:

原始字符串Suraj, Sanjeev, Rajnish, Yash, Ravi排序后的Rajnish, Ravi, Sanjeev, Suraj, Yash原始字符串40、100、1、5、25、10排序后1, 5、10、25、40, 100

下面的程序说明了上述方法:

程序:

<script>
// JavaScript code to sort the strings
  
// Function to perform sort
function string_sort(str) {
     var i = 0, j;
     while (i < str.length) {
         j = i + 1;
         while (j < str.length) {
             if (str[j] < str[i]) {
                 var temp = str[i];
                 str[i] = str[j];
                 str[j] = temp;
             }
             j++;
         }
         i++;
     }
}
      
// Driver code
      
// Original string
var string = [ "Suraj" , "Sanjeev" , "Rajnish" , "Yash" , "Ravi" ];
      
// Print original string array
document.write( "Original String</br>" );
document.write(string);
      
document.write( "</br>" );
      
// Call string_sort method
string_sort(string);
      
document.write( "</br>After sorting</br>" );
      
// Print sorted string array
document.write(string);
      
</script>

输出如下:

Original String
Suraj, Sanjeev, Rajnish, Yash, Ravi

After sorting
Rajnish, Ravi, Sanjeev, Suraj, Yash

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: