Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何对表示数字的单词数组进行排序?_Javascript_Angularjs - Fatal编程技术网

Javascript 如何对表示数字的单词数组进行排序?

Javascript 如何对表示数字的单词数组进行排序?,javascript,angularjs,Javascript,Angularjs,我们如何在Javascript(Angularjs)中对数字进行单词排序(一、二、三) 我的数组有一些数字字 $scope.Numbers = ["three", "one", "five", "two", ...... "hundred", "four"]; 我希望结果是: one two three four ... ... ... hundred 我在谷歌上搜索了这个解决方案,但什么也没找到 我还尝试了array.sort(),但它是按字母顺序排序的 以下是一个简单的多步骤解决方案:

我们如何在Javascript(Angularjs)中对数字进行单词排序(一、二、三)


我的数组有一些数字字

$scope.Numbers = ["three", "one", "five", "two", ...... "hundred", "four"];
我希望结果是:

one
two
three
four
...
...
...
hundred
我在谷歌上搜索了这个解决方案,但什么也没找到


我还尝试了
array.sort()
,但它是按字母顺序排序的

以下是一个简单的多步骤解决方案:

我们有效地将单词排序问题简化为数字排序问题以及数字与单词之间的转换问题


更重要的是,通过重用3个小问题的解决方案,我们解决了一个更大的问题。这是编程的一个基本部分,在任何地方,尤其是在这里——通过找到较小的子问题并将它们应用到手头的任务中,我们可以快速地解决它,而不必对单词本身实际实现排序功能

我将详细说明人们在评论中为您写了些什么。简单地说,编译器无法知道哪个单词比其他单词高或低,因为单词只是字符的集合。这就像说:哪个词的值更高,“鸡”还是“车”?或者编译器怎么知道你甚至在用英语写作?如果你用文字写数字,但用其他语言写,会发生什么?基本上,对于编译器来说,每个字符串都是一组字符,它不在乎它们是哪个字母或单词,因为从它的角度来看,这并不重要。如果你把它比作一个数字,那么一个数字就是一个合法的结构,它有属性和数学规则可以遵循。我相信这就是人们对你的问题投反对票的原因


排序算法的启动没有依据。因此,您需要先将字符串转换为整数,然后对其进行排序,如果您想对其进行排序,则需要将其转换回字符串,就像上面解释的Benjamin一样。

如果您想按含义排序,则需要一个查找数组。angular和javascript都不懂英语,他们怎么知道“三”比“四”低?我想你需要一个对象或数组将这些单词映射到适当的数字,并比较数字而不是单词。@X.L.Ant,如果你知道关于数字的知识,那你为什么不懂英语呢?因为你的问题的措辞并不表明你在提问之前对这个问题做了很多研究。听起来你好像在要求密码。这也是为什么我没有在我的回答中为您提供代码,而是提供了一种方法,这样您可以确保您自己以及未来的访问者能够真正理解问题和解决方案(以及我为什么采用这种方法)。因此,这不是一项单一的任务。这是一项多重任务。不管怎样,我都会从你的回答中向我的客户索要更多的钱。@RameshRajendran一定要给我寄一张支票。检查我的分数。
意思是说?@RameshRajendran你因为我的错误而向客户收取的那部分钱answer@RameshRajendran带着一个客户,然后将任务发布到SO,这听起来像是一个非常可疑的业务模范,至少在道德上。