jQuery数组拼接也更改了先前声明的数组

问题描述

$(document).ready(function(){
    var $new_questions = [1,2,3,4,5];
    var $new_questions2 = $new_questions;
    
    $new_questions.splice(2,2);
    
    $("#array_values_1").html($new_questions.toString());
    $("#array_values_2").html($new_questions2.toString());
});

我需要保留$ new_questions2变量。但是使用拼接时,两个数组都会更改。

https://jsfiddle.net/uoncyber/q51kjmny/5/

解决方法

var $new_questions2 = $new_questions更改为var $new_questions2 = $new_questions.slice()