北寒无树 2022-03-17 15:13 采纳率: 100%
浏览 29
已结题

一个简单JS编程问题

//翻转数组
function fn2(){
            let x ;
            console.log(arguments);
            for(let i = 0; i <= arguments.length-1; i++){
                for(let j = 0; j <= arguments.length-i-1; j++){
                    x = arguments[j];
                    arguments[j] = arguments[j+1];
                    arguments[j+1] = x;  
                }
            }
            for(let z = 0; z <= arguments.length-1; z++){
                console.log(arguments[z]);
            }
            console.log(arguments);
        }
        fn2(4,5,6,8,9,10,110);
问题

使用arguments最后得到的arguments是
Arguments(7) [undefined, 110, 10, 9, 8, 6, 5, 4, callee: ƒ, Symbol(Symbol.iterator): ƒ],
请问大佬们这个undefined是哪里来的。

  • 写回答

2条回答 默认 最新

  • 萝卜村的白菜 2022-03-17 15:47
    关注

    因为在第一次会出现arguments[6]与arguments[7]的替换 ,而arguments[7]并没有实际的数值,所以是undefined,所以在你的循环并排序之后,被排到第一位

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月1日
  • 已采纳回答 3月24日
  • 创建了问题 3月17日

悬赏问题

  • ¥15 求指导ADS低噪放设计
  • ¥15 CARSIM前车变道设置
  • ¥50 三种调度算法报错 有实例
  • ¥15 关于#python#的问题,请各位专家解答!
  • ¥200 询问:python实现大地主题正反算的程序设计,有偿
  • ¥15 smptlib使用465端口发送邮件失败
  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存