Javascript 如何显示已排序的数组

Javascript 如何显示已排序的数组,javascript,html,dom,Javascript,Html,Dom,我试图使用javascript DOM显示排序后的数组,但它只显示输入的数组。我做错了什么 用于阵列的eg Arr[7,8,2,3,5,4] 当我在没有Dom的情况下单独运行js文件时,它显示[2,3,4,5,7,8],但在使用Dom时显示[7,8,2,3,5,4] function BubbleSort(Arr){ var temp; var Arr=document.getElementById("data1").value; for(let i=0;i<Ar

我试图使用javascript DOM显示排序后的数组,但它只显示输入的数组。我做错了什么

用于阵列的eg Arr[7,8,2,3,5,4] 当我在没有Dom的情况下单独运行js文件时,它显示[2,3,4,5,7,8],但在使用Dom时显示[7,8,2,3,5,4]

function BubbleSort(Arr){
    var temp;
    var Arr=document.getElementById("data1").value; 
    for(let i=0;i<Arr.length-1;i++){
        for(let j=0;j<Arr.length-i-1;j++){
            if(Arr[j] > Arr[j+1]){
                temp = Arr[j];
                Arr[j] = Arr[j+1];
                Arr[j+1] = temp;
            }
        }
    }
    console.log(Arr);
    document.getElementById("demo").innerHTML="the answer is :" +Arr;
};
函数BubbleSort(Arr){
无功温度;
var Arr=document.getElementById(“data1”).value;

对于(设i=0;i那么,您将Arr作为参数提供,但随后您将忽略它并重新定义Arr)

var Arr=document.getElementById("data1").value; 

注释该行,它应该可以正常工作。

问题是您正在从DOM中读取某些内容并将其作为数组传入。从“data1”中读入值后,请确保它是数组,然后再将其传递给函数

函数BubbleSort(){
无功温度;
var Arr=document.getElementById(“data1”).value;
//如果将输入设置为字符串,则下一行将拆分输入
Arr=Arr.split(',');
for(设i=0;iArr[j+1]){
温度=Arr[j];
Arr[j]=Arr[j+1];
Arr[j+1]=温度;
}
}
}
控制台日志(Arr);
document.getElementById(“demo”).innerHTML=“答案是:”+Arr;
}
BubbleSort();


Sort
您能告诉我们您的代码不起作用的版本吗?如果我们只能看到没有问题的版本,这将很难为您提供帮助。(现在还不清楚您所说的“使用DOM时”到底是什么意思,因此,如果您能给我们显示一个,这将节省大量时间和混乱。)
Arr
是一个字符串,它们是不可变的。