Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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_Arrays - Fatal编程技术网

为什么我的JavaScript代码返回未定义

为什么我的JavaScript代码返回未定义,javascript,arrays,Javascript,Arrays,//从输入字段获取值并存储在tenNums数组中 田纳西变量=[]; 函数myFunction(){ var nums=document.getElementById(“myNumber”).value; document.getElementById(“display”).innerHTML=nums; 田纳西推(nums); } //我想要这个函数对数组排序并打印第三高的数字 函数myDisplay(){ 田纳西.排序(函数(a,b){ 返回a-b; }); document.getElem

//从输入字段获取值并存储在tenNums数组中
田纳西变量=[];
函数myFunction(){
var nums=document.getElementById(“myNumber”).value;
document.getElementById(“display”).innerHTML=nums;
田纳西推(nums);
}
//我想要这个函数对数组排序并打印第三高的数字
函数myDisplay(){
田纳西.排序(函数(a,b){
返回a-b;
});
document.getElementById(“demo”).innerHTML=tenNums[tenNums.length-3];
}

审讯问题
编写一个程序,读取十个数字,计算出哪一个是正确的
第三高
输入任意十个随机数字


进入 您输入了以下数字:

单击下面的按钮查看第三高

展示 第三高的数字是


//这将从输入字段中获取值并存储在tenNums数组中
田纳西变量=[];
函数myFunction(){
var nums=document.getElementById(“myNumber”).value;
document.getElementById(“display”).innerHTML=nums;
tenNums=nums.split(“”).map(Number);//这将返回一个数组
}
//我想要这个函数对数组排序并打印第三高的数字
函数myDisplay(){
田纳西.排序(函数(a,b){
返回a-b;
});
document.getElementById(“demo”).innerHTML=tenNums[tenNums.length-3];
}

确保数组中至少有3个元素可以找到第三大元素您只需要推一个元素:字符串。如何输入字符串?首先,您可以使用'nums.split(“”)'将表单字符串的所有数字拆分为数组索引表单,然后可以对其应用排序方法it@Zon“数组索引表”<代码>nums.split(“”)?OP希望对数字进行排序,而不是对单个数字数组索引或单个字符串进行排序。@SebastianSimon document.getElementById(“myNumber”).value的返回值是多少?不是单个字符串?
//定义字符串变量
 — 为什么?<代码>整数分割(“”) — OP希望对数字进行排序,而不是单个字符串。nums是一个字符串,要将字符串转换为数组索引形式,我们可以使用split()和这里的“数组索引形式”?OP希望对数字进行排序,而不是对单个数字数组索引(小于10的正整数)或单个字符串进行排序。@Zon您上面的解决方案对我不起作用。它仍然未定义地打印出来。我是一个代码新手,请帮帮我。正如@SebastianSimon在上面所说的,是的,我想对数字进行排序,而不是字符串。谢谢你们的帮助,谢谢。
<script>
 //this gets the value from input field and stores in the tenNums array
  var tenNums = [];

  function myFunction() {
    var nums = document.getElementById("myNumber").value;    
    document.getElementById("display").innerHTML = nums;
    tenNums=nums.split('').map(Number); // this will return an array 
  }

   // I want this function to sort the array and print the 3rd highest number

  function myDisplay() {
    tenNums.sort(function(a, b) {
      return a - b;
    });
    document.getElementById("demo").innerHTML = tenNums[tenNums.length - 3];
  }
</script>