草庐IT

可变数组

全部标签

Javascript:转发采用可变数量参数的函数调用

这个问题在这里已经有了答案:Passingargumentsforwardtoanotherjavascriptfunction(5个答案)关闭5年前。我想我需要像ruby​​的splat*这样的东西。functionfoo(){varresult='';for(vari=0;i我希望它返回"123",但我得到的是"[objectArguments]"。我想这是有道理的。它传递的是表示参数的对象,而不是单独的参数。那么我如何简单地将任意数量的参数转发给另一个接受任意数量参数的函数呢?

javascript - 使用 jQuery 将 XML 转换为 javascript 数组

我是XML和AJAX的新手,也是Javascript和jQuery的新手。在其他工作职责中,我设计了我们的网站。最后期限非常近,我能想到的唯一方法就是使用AJAX来完成这个项目。我有一个充满XML对象的文档,例如这个重复的对象:我想创建一个包含所有元素及其子元素的数组。我已经阅读了几个小时关于AJAX的jQuery教程,甚至不知道从哪里开始,因为它们都假定一定水平的javascript熟练程度。如果有人能告诉我循环遍历所有元素并将其子项放入数组中的最简单方法,我将不胜感激。 最佳答案 使用jQuery,$.ajax()您的XML文件

javascript - 在 JavaScript 中合并两个对象 (NodeList) 数组

我正在尝试合并两个对象数组,以便验证表单。在这种情况下,通常的concat方法似乎不起作用。Concat适用于普通数值和字符串数组,但不适用于对象数组。varallTags=allInputs.concat(allSelects);行不起作用。varallInputs=document.getElementsByTagName("input");alert("Inputs:"+allInputs.length);varallSelects=document.getElementsByTagName("select");alert("Selects:"+allSelects.length

javascript - 如何只返回数组中匹配对值的数量?

假设我在一次旧货大甩卖中发现了一盒宽松的鞋子(都是同一种),我创建了一个数组,其中每只鞋子都按鞋码列出。我想显示数组中鞋码配对值的数量。例如,我有这个数组:[10,10,10,10,20,20,20,30,50]我想显示3因为我们有3对数字:10,1010,1020,20还有3个没有匹配对值的剩余值(20,30,50)。我该怎么做?functionpairNumber(arr){varsorted_arr=arr.sort();vari;varresults=[];for(i=0;i 最佳答案 这是使用Set的另一种方法:funct

javascript - 如何从数组中删除除最后 N 个元素以外的所有元素?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求提供代码的问题必须表现出对所解决问题的最低限度理解。包括尝试过的解决方案、为什么它们不起作用,以及预期结果。另请参阅:StackOverflowquestionchecklist关闭9年前。Improvethisquestion我有一个数组。我有一个变量显示数组中有多少元素必须留在最后。有没有可以做到这一点的功能?示例:vararr=[1,2,3,4,5];varn=2;arr=someFunction(n);//arr=[4,5];我想要一个包含最后n个元素的数组。

javascript - 如何循环遍历从不同索引开始的数组,同时仍然遍历整个数组?

假设我有一个包含5个字符串的数组。我怎样才能在索引3处开始一个for循环并绕过并在索引2处结束?让我举个例子。varmyArry=["cool","gnarly","rad","farout","awesome"];想从索引3(“farout”)开始循环到数组末尾(“awesome”),然后继续从索引0到索引2循环。基本上在某个点(索引0除外)开始一个数组,然后仍然命中数组中的每个元素。 最佳答案 一种方法是像往常一样使用索引遍历数组,并使用带有偏移量的取模运算符,以获得指向数组中正确位置的指针:varmyArry=["cool",

javascript - 合并两个具有交替值的数组

我想合并2个不同长度的数组:letarray1=["a","b","c","d"];letarray2=[1,2];我期望的结果是["a",1,"b",2,"c","d"]最好的方法是什么? 最佳答案 您可以迭代两个数组的最小长度并构建替代元素,最后压入其余元素。vararray1=["a","b","c","d"],array2=[1,2],result=[],i,l=Math.min(array1.length,array2.length);for(i=0;i使用转置算法和稍后展平的任意数量数组的解决方案。vararray1=[

javascript - 为什么我的 Promise 数组在调用 Promise.all() 之前运行?

我正在尝试创建一个Promise数组,然后使用Promise.all()解决它们。我正在使用got,它返回一个promise。我的代码可以工作,但我不完全理解如何工作。在这里:constgot=require('got');consturl='myUrl';constparams=['param1','param2','param3'];letpromiseArray=[];for(paramofparams){promiseArray.push(got(url+param));}//Inspectthepromisesfor(promiseofpromiseArray){consol

javascript - 从javascript数组中查找匹配的字符串

我有一组字符串。我需要找到所有以键开头的字符串。例如:如果有数组['apple','ape','open','soap']当使用键'ap'搜索时我应该只得到“苹果”和“猿”,而不是“肥皂”。这是在javascript中。 最佳答案 使用indexOf正如@Annie建议的那样。indexOf用于查找给定字符串中的子字符串。如果没有匹配,则返回-1,否则返回第一个匹配的起始索引。如果该索引为0,则表示匹配在开头。另一种方法是使用regularexpressions.使用^字符从字符串的开头开始匹配。正则表达式:/^he/将匹配所有以“

javascript - 如何在 JavaScript 中按多列对多维数组进行排序?

我整天都在研究这个问题,没有一个好的解决方案。谷歌也没有什么帮助。我有一个脚本需要接受一个行/列数未知的二维数组。该脚本还需要接受一个一维数组,其中包含要排序的列列表,以及另一个包含要排序的顺序的数组。调用看起来有点像这样:varorderList={0,4,3,1};varorderDir={asc,desc,desc,asc};dataArr=do2DArraySort(dataArr,orderList,orderDir);函数do2DArraySort应该返回按第一列(升序)、第五列(降序)、第三列(降序)、第二列(降序)排序的dataArr数组).我可以使用下面的代码将它加深