查找数组中数字最多的数字

时间:2017-12-29 11:01:47

标签: javascript

我们在这里。卡住。

我决定创建一个找到数字最多的元素的函数。如果其中两个具有相同的长度,则返回第一个。常识告诉我们它可能是最高的数字。以下是代码段:



function findLongest(array) {
  var biggestNum = 0;

  for(var i = 0; i < array.length; i++) {
    if(array[i] > biggestNum) {
      biggestNum = array[i];
    }
  }
  return biggestNum;
}

findLongest([111,1111,5555,10000,1,90000]); //returns 90000 instead of 10000.
&#13;
&#13;
&#13;

但是,我无法满足第二个条件(如果两个长度相同,则返回第一个条件)。

有什么想法吗?

3 个答案:

答案 0 :(得分:2)

如果您想进行数字长度比较,请将这些项目投放到No AWS credential setup for profile: [default]. Lambda clone skipped. CLI lambda functionalities can be enabled by running `ask init` again to add 'aws_profile' to ASK cli_config 并使用string

&#13;
&#13;
length
&#13;
&#13;
&#13;

答案 1 :(得分:1)

您可以使用值的10的对数的整数值进行检查,因为您获得了comapiring的数字位数(减1)。

&#13;
&#13;
$options = [];
$options['login'] = $authentication->getLogin();
$options['password'] = $authentication->getPassword();
$options['authentication'] = SOAP_AUTHENTICATION_BASIC;

$client =  new SoapClient($wsdl, $options);
$client->__soapCall($functionName, $arguments);
&#13;
&#13;
&#13;

答案 2 :(得分:0)

第二个条件每次都否定第一个条件。最高数字&#34;正确?

如果你想要最高数字,为什么不排序并弹出最后一个元素作为返回值?

array[array.sort(function(a,b){return b - a}).length - 1]

array的迭代是不必要的