繁体   English   中英

在JavaScript中将数组作为参数传递

[英]Passing an array as parameter in JavaScript

我有一个数组,我想将它作为参数传递给函数,例如:

function something(arrayP){
    for(var i = 0; i < arrayP.length; i++){
          alert(arrayP[i].value);
    }
 }

我得到的arrayP [0]是未定义的,这可能是真的,因为在函数内部我从来没有写过什么样的数组arrayP。 所以,

  1. 是否可以将数组作为参数传递?
  2. 如果是这样,功能内部的要求是什么?

只需删除.value ,如下所示:

function(arrayP){    
   for(var i = 0; i < arrayP.length; i++){
      alert(arrayP[i]);    //no .value here
   }
}

当然你可以传递一个数组,但要在该位置获取元素, 使用arrayName[index] .value value将从数组中该位置的对象获取value属性 - 对于像字符串,数字这样的东西,等不存在。 例如, "myString".value也将是undefined

JavaScript是一种动态类型语言。 这意味着您永远不需要声明函数参数(或任何其他变量)的类型。 因此,只要arrayP是一个数组并且包含具有value属性的元素,您的代码就会起作用。

可以将数组传递给函数,处理它们没有特殊要求。 你确定要传递给函数的数组实际上有一个元素在[0]吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM