获取数组的初始内容

时间:2016-02-29 04:15:31

标签: javascript

我只是有一些从数组中删除元素的函数,有什么方法可以在没有元素的情况下获取数组的初始内容? 我知道我必须使用

if(array.length=0){
}

但它击败了我在花括号中放入的内容。我试图创建一个复制第一个数组的数组,然后在实现将空数组分配给重复的数组之后,但它没有&# 39;工作

3 个答案:

答案 0 :(得分:0)

我猜你可以在

之上定义var
 function var car ="";
 if(array.length =0){
// do your operation cars = new Array("Saab", "Volvo", "BMW")
  enter code here;
 }`
// you can get get data console.log(cars);

答案 1 :(得分:0)

试试这个:

var copyOfArray = array.slice(0); //Returns a copy of all the elements in array

if(!array.length){
    array = copyOfArray.slice(0);
}

如果数组包含对象,则使用以下方法仅获取值(不是函数):

var clonedArray = JSON.parse(JSON.stringify(nodesArray));

答案 2 :(得分:0)

如果你想要一个数组的副本,你需要做一个所谓的深层复制。

var a = [11,22,33,44,55,66,77,88,99];
var a_copy = a;
var a_backup = [];
console.log("original length = "  + a.length)
for(var i = 0;i<a.length;i++){
  a_backup[i] = a[i];
}
for(var i = 0;i<a.length;i++){
  a[i] = undefined;
}
console.log("original = "  + a.join(","))
console.log("copy     = "  + a_copy.join(","))
console.log("backup   = "  + a_backup.join(","))
console.log("original length now = "  + a.length)
for(var i = 0;i<a_backup.length;i++){
  a[i] = a_backup[i];
}
console.log("restored = "  + a.join(","))

这还取决于您删除条目的方式。如果你这样做了,长度保持不变,但还有其他方法可以改变数组本身的长度,你需要检查它。