使用html&;根据文本区域中的长度对单词进行排序;javascript
它显示基于单词首字母的输出,但我需要基于长度的输出:使用html&;根据文本区域中的长度对单词进行排序;javascript,javascript,Javascript,它显示基于单词首字母的输出,但我需要基于长度的输出: 示例:当我在文本区域中输入一些内容时:welcome to javascriptworld it is a independent langauage,预期输出是:最小的单词是“a”,最长的单词是“javascriptworld”,有人能帮我怎么做吗?我想你只需要更改你的 function SortWords(){ var inputvalues=document.getElementById("sorter3").value.spl
示例:当我在文本区域中输入一些内容时:welcome to javascriptworld it is a independent langauage,预期输出是:最小的单词是“a”,最长的单词是“javascriptworld”,有人能帮我怎么做吗?我想你只需要更改你的
function SortWords(){
var inputvalues=document.getElementById("sorter3").value.split("");
inputvalues.sort();
//alert(inputvalues)
alert(inputvalues[0])
document.getElementById("sorter3").value=inputvalues;
}
到
这样,它将使用空格分割字符串,而不是将其拆分为每个单独的字符
至于排序,如果您将函数作为参数发送给它,它将使用函数作为比较类型进行排序。可能是这样(未经测试):
其余的应该是相当直接的。您只需要根据单个元素的字符串长度对inputvalues数组进行
排序(使用split(“”)
而不是split(“”)
)
.sort(function (a, b) { return a.length - b.length; } );
Hi,我会先删除文本中的所有符号,即逗号、连字符、引号等。然后我会用空格分割,即split(“”)
,然后我会通过简单的使用重复每个单词来确定其长度。希望这能有所帮助。我改变了,但这并没有表现出不同,我输入的输入是:欢迎来到javascriptworld实践点,因为我需要输出,因为最小的单词在to中,最长的单词是:javascriptworldWell您需要将您的inputValues变量重新分配给新排序的变量,如“inputValues=inputValues.sort();”@Maxwell'sDemon我认为这不是必需的,sort
方法修改原始数组automatically@tewathia完全正确。我已经测试过了,它对我有效。我不知道发生了什么。同样的,我们如何对数字进行排序,例如:输入为22,98,1104,32。我们如何得到输出,因为最小的单词是1,最长的单词是104谢谢tewathia您的演示程序工作正常
split("");
split(" ");
.sort(function (a, b) { return a.length - b.length; } );
var inputvalues=document.getElementById("sorter3").value.split(" ");
inputvalues.sort(function(x, y) {return x.length>y.length;});