当前位置: 首页 > 知识库问答 >
问题:

引用数组javascript[重复]

刘向阳
2023-03-14

使用以下代码

Array0 = ['a', 'b', 'c'];
Array1 = ['c', 'd', 'e'];
Array2 = ['x', 'a', 'd'];
...

/*
doStuff() is a recursive function whose argument is an abitrary length array
containing an arbitrary list of array names
e.g., anArr = ['Array1', 'Array0', 'Array1', 'Array2', ...]
*/

function doStuff(anArr) {

    for(i=0; i<anArr.length; i++)   {

      switch(anArr[i])  {
      case('Array0')    :   Array0.myMethod(); break;
      case('Array1')    :   Array1.myMethod(); break;
      case('Array2')    :   Array2.myMethod(); break;
      }

    }
}

有没有办法用一条语句替换switch()块:

<<array referenced by 'someArray'>>.aMethod()   //or
function aFunction (<<array referenced by 'someArray'>>){}

请使用纯Javascript-不要使用jquery或其他库。谢谢

共有2个答案

干浩阔
2023-03-14

可以将实际数组存储在数组中...

Array0 = ['a', 'b', 'c'];
Array1 = ['c', 'd', 'e'];
Array2 = ['x', 'a', 'd'];

var anArr = [Array0, Array1, Array2];
for(i=0; i<anArr.length; i++) {
    anArr[i].myMethod();
}
慕翰学
2023-03-14

首先使用一个对象

var foo = {
  Array0 : ['a', 'b', 'c'];
  Array1 : ['c', 'd', 'e'];
  Array2 : ['x', 'a', 'd'];
}

那么您可以:

foo[anArr[i]].myMethod();
 类似资料:
  • 在将数组传递给java中的函数然后将其分配给新数组时,我得到了相同的旧数组。 当传递数组处理传递对该数组的引用时,为什么会这样?

  • 我想创建一个数组,使其包含一些标识名,并且对于这些名称中的每一个,都有另一个关联的数组。我的做法是,, 执行此操作后,我得到如下结果:, 下次调用此函数时,我需要检查1-1是否存在,如果存在,我需要获取与1-1相关的列表。我该怎么做。。?如果1-1不在myArray中,我将调用其他函数。

  • 这是我的代码: 它读取上传的文件,并将原始文件保存在数据对象(propertiesData)中。问题就出在这一部分: console.log(readFiles);显示像这样的原始文件数组和console.log(i);显示console.log(readfiles[i])的正确索引;应该显示一个原始文件字符串,但它只显示未定义的。为什么?

  • 问题内容: 我有我必须取消一些索引的数组,所以现在看起来像 如您所见,[2]丢失了,我需要做的就是重置索引,因此它们显示为[0]-[3]。 问题答案: 使用。

  • 本文向大家介绍javascript数组去重小结,包括了javascript数组去重小结的使用技巧和注意事项,需要的朋友参考一下 前言 最近为了换工作,准备下面试,开始回顾复习JavaScript相关的知识,昨天下午想到了数组去重的相关方法,干脆整理出几篇JavaScript算法文章,以备后用,此系列文章不定篇数,不定时间,想到哪写到哪,不保证正确性,不保证高效率,只是谈谈个人理解,如有错误,请诸位

  • 实现数组去重并对重复的元素进行标记,如果重复 "isRepeat": true",否则为 "isRepeat": false" 但是函数实际输出的元素都标记为 "isRepeat": true"