Javascript 从给定数组中查找最大数或最大值

Javascript 从给定数组中查找最大数或最大值,javascript,Javascript,我的项目模块包含许多实践问题,从我选择并试图解决的一个问题中,以下是问题 给定一个数字数组,以产生最大值的方式排列它们。例如,如果 给定的数字是{5454654860},6054854654的排列给出了最大值。 输入: 第一行包含一个整数N,下一行包含由空格分隔的N个整数。 输出: 打印使用给定数字可以获得的最大数字。 限制条件: 1在您的代码中,您遗漏了两件事,请检查以下几点 i) 分割合并的值后,忘记对值进行排序以查找最大值 ii)在映射输出时,调用了错误的变量 请检查下面的代码 funct

我的项目模块包含许多实践问题,从我选择并试图解决的一个问题中,以下是问题

给定一个数字数组,以产生最大值的方式排列它们。例如,如果 给定的数字是{5454654860},6054854654的排列给出了最大值。 输入: 第一行包含一个整数N,下一行包含由空格分隔的N个整数。 输出: 打印使用给定数字可以获得的最大数字。 限制条件:
1在您的代码中,您遗漏了两件事,请检查以下几点

i) 分割合并的值后,忘记对值进行排序以查找最大值 ii)在映射输出时,调用了错误的变量

请检查下面的代码

function myFun() {
  let b = document.getElementById("userinput").value;
  let c = b.split(" ");
  var maxCombine = (a) => +(a.sort((x, y) => +("" + y + x) - +("" + x + y)).join(''));

  document.getElementById("out").value = ([
  c
  ].map(maxCombine));
  };

在您的代码中,您遗漏了两件事,请检查以下几点

i) 分割合并的值后,忘记对值进行排序以查找最大值 ii)在映射输出时,调用了错误的变量

请检查下面的代码

function myFun() {
  let b = document.getElementById("userinput").value;
  let c = b.split(" ");
  var maxCombine = (a) => +(a.sort((x, y) => +("" + y + x) - +("" + x + y)).join(''));

  document.getElementById("out").value = ([
  c
  ].map(maxCombine));
  };

这里有一些小的变化,这是一个工作示例:
函数myFun(){
设b=document.getElementById(“userinput”).value;
设c=b.拆分(“,”);
var maxCombine=(a)=>+(a.sort((x,y)=>+(“”+y+x)-+(“”+x+y)).join(“”));
document.getElementById(“out”)。值=([
C
].map(maxCombine));
};
输入号码:


最大值:

这里是工作示例,有一些小改动:
函数myFun(){
设b=document.getElementById(“userinput”).value;
设c=b.拆分(“,”);
var maxCombine=(a)=>+(a.sort((x,y)=>+(“”+y+x)-+(“”+x+y)).join(“”));
document.getElementById(“out”)。值=([
C
].map(maxCombine));
};
输入号码:


最大值:

这是使用sort with的另一种方法

不需要将拆分的项转换为字符串,因为使用后,您将获得一个字符串数组

var字符串='5454654860808';
console.log(
一串
.拆分(“”)
.sort((a,b)=>(b+a).localeCompare(a+b)).join(“”)

);使用sort with只是另一种方法

不需要将拆分的项转换为字符串,因为使用后,您将获得一个字符串数组

var字符串='5454654860808';
console.log(
一串
.拆分(“”)
.sort((a,b)=>(b+a).localeCompare(a+b)).join(“”)

);Uncaught ReferenceError: a is not defined at myFun (lagnum.html:26) at HTMLButtonElement.onclick
function myFun() {
  let b = document.getElementById("userinput").value;
  let c = b.split(" ");
  var maxCombine = (a) => +(a.sort((x, y) => +("" + y + x) - +("" + x + y)).join(''));

  document.getElementById("out").value = ([
  c
  ].map(maxCombine));
  };