Javascript 使用数组填充进行排序不稳定?

Javascript 使用数组填充进行排序不稳定?,javascript,Javascript,我在Leet代码上试验了Array().fill(),它们的用例都接受了它,但后来我在数组中添加了另一个数字,它造成了堆栈溢出 知道为什么吗 功能排序颜色(颜色){ 常量计数器=新数组(颜色.长度).fill(0); for(让n个颜色){ 计数器[n]++; } 设j=0; for(设i=0;i[0, 0, 1, 1, 2, 2] 常量颜色_2=[7,2,0,2,1,1,0]; 常量结果_2=排序颜色(颜色_2); console.log(结果_2);//=>堆栈溢出 问题与while循环和的

我在Leet代码上试验了Array().fill(),它们的用例都接受了它,但后来我在数组中添加了另一个数字,它造成了堆栈溢出

知道为什么吗

功能排序颜色(颜色){
常量计数器=新数组(颜色.长度).fill(0);
for(让n个颜色){
计数器[n]++;
}
设j=0;
for(设i=0;i[0, 0, 1, 1, 2, 2]
常量颜色_2=[7,2,0,2,1,1,0];
常量结果_2=排序颜色(颜色_2);
console.log(结果_2);//=>堆栈溢出

问题与
while
循环和
的使用有关操作员。如果它是
0
null
未定义
,它将继续迭代而不转义。在本练习中,重要的是检查计数器值是否为
0
。Idk,但可能他们使用了否定运算符,因为他们知道数组的长度

功能排序颜色(颜色){
常量计数器=新数组(颜色.长度).fill(0);
for(让n个颜色){
计数器[n]++;
}
设j=0;
for(设i=0;i[0, 0, 1, 1, 2, 2]
常量颜色_2=[7,2,0,2,1,1,0];
常量结果_2=排序颜色(颜色_2);

console.log(结果_2);//=>堆栈溢出
这不是堆栈溢出,这是一个无限循环。你做过一些调试吗?你查过密码了吗?您是否尝试记录
计数器
,尤其是
计数器[j]
?@bergi,这将导致堆栈溢出。!不,不会,堆栈不会增长。