Chenjingxvan 2022-04-07 11:27 采纳率: 68.8%
浏览 209
已结题

JS splice方法不执行


<script>
            var arr=['sky','wind','snow','sun'];
            arr.splice(2,2);//从数组下标2的位置开始,删掉两个元素
            console.log(arr);
            arr.splice(1,1,'snow');//从数组下标1的位置开始,删除1个元素后,再添加snow元素
            console.log(arr);
            arr.splice(4,0,'hail','sun');//指定下标4大于数组的长度,则直接在数组末尾添加hail和sun元素
            console.log(arr);
            arr.splice(3,0,['lala','yaya'],null,undefined,[]);//从数组下标3的位置开始,添加数组、null、undefined和空数组
            console.log(arr);
        </script>

img

为什么前三个splice不执行,结果都是最后一个splice方法的结果

  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2022-04-07 11:45
    关注

    数组是对象,对象打印到控制台,展开后得到是当前对象的值

    要看当时的值,可以用JSON.stringify转为普通类型字符串就可以看到内容了,如下

    img

    
    <script>
        var arr = ['sky', 'wind', 'snow', 'sun'];
        arr.splice(2, 2);//从数组下标2的位置开始,删掉两个元素
        console.log(JSON.stringify(arr));
        arr.splice(1, 1, 'snow');//从数组下标1的位置开始,删除1个元素后,再添加snow元素
        console.log(JSON.stringify(arr));
        arr.splice(4, 0, 'hail', 'sun');//指定下标4大于数组的长度,则直接在数组末尾添加hail和sun元素
        console.log(JSON.stringify(arr));
        arr.splice(3, 0, ['lala', 'yaya'], null, undefined, []);//从数组下标3的位置开始,添加数组、null、undefined和空数组
        console.log(JSON.stringify(arr));
    </script>
    
    
    

    img

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

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月7日
  • 已采纳回答 4月7日
  • 创建了问题 4月7日

悬赏问题

  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改