问题标签 [array-splice]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 比较和过滤两个数组
我一直在尝试实现一个给定两个数组的函数,
array1的元素用作过滤出array2中的元素的条件。
例如:
输入函数后,array2 应该具有如下元素:
我尝试了以下代码,使用 for 循环和 array.splice(),但我看到的问题是,当我使用 splice 方法时,它似乎改变了 for 循环中 array2 的长度:
任何关于如何改进过滤功能的输入都将不胜感激
干杯!
php - array_splice() :将数组插入到索引处的二维数组中 [PHP]
我正在尝试将数组插入到特定位置的二维数组中。根据手册,我应该可以使用 array_splice() 来执行此操作,但它只会删除我的接收数组的内容而不插入。
我想得到一个包含 $receivingArray 的所有值(数组)加上新值(数组)的数组。
我究竟做错了什么??
手册信息:
数组 array_splice ( 数组 &$input , int $offset [, int $length [, mixed $replacement = array() ]] )
如果指定了长度并且为零,则不会删除任何元素。如果替换只是一个元素,则无需将 array() 放在 > 它周围,除非该元素是数组本身、对象或 NULL。
输入:
结果:$newArray 是一个空数组
输入 :
结果:$newArray 是一个空数组
这个输入:
给出:(有趣)
angularjs - 为什么这个拼接会删除我的 ng-repeat 中的错误项目?
我正在尝试根据它们的 $index 拼接出这个 ng-repeat 中的项目。它可以很好地添加它们,但是当我尝试使用相同的代码删除该项目时,它只删除数组的最后一项,就好像它正在执行 pop() 方法一样。我不知道为什么。这是我要重复的对象:
这是我的 HTML:
这是我的控制器:
这会在控制台中打印正确的数字,但实际上会删除 items 数组中的最后一项。有任何想法吗?
arrays - 使用 removeChild() 和访问数组成员时出错
即使我知道这很简单,我也坚持这样做。然而,我遇到了错误。
我有的:
我有 3 个数组。
- 第一个数组包含
UpgradeButton
类的对象。 - 第二个数组包含
BuyButton
类的对象。 - 命名的第三个数组
newCostlyShops
包含数字。
BuyButton
class 和UpgradeButton
class 都有一个shopCode
成员,它是一个数字;我试图等同的数字。
我正在尝试做的事情:
我的目标是首先在各个数组中查找BuyButton
与.UpgradeButton
shopCode
newCostlyShops
之后,我removeChild()
将那个对象和splice
它从数组中取出。
我的代码:
阵列 3:
删除和拼接代码:
这段代码有什么问题:
我不断收到错误
TypeError:错误#1010:术语未定义且没有属性。
此错误仅在第一次运行此代码之后出现,而不是第一次运行。当我删除removeChild
andsplice
时,这会追踪出不为空的对象。即使在整个函数被调用 100 次之后,也不会显示错误。只有当我removeChild
和使用splice
这种情况发生。
我在做什么有问题吗?如何避免这个错误?这使整个程序陷入混乱。如果此方法还有其他替代方法,我愿意采用这些方法,只要我没有出错并且达到我的目标。
php - 即使数组为空或位置不存在,在数组位置插入元素
我尝试使用array_splice
此处描述的策略
在 PHP 中的任何位置插入数组中的新项目
但它不起作用,因为数组为空或键不存在。所以我尝试检查是否先设置密钥然后创建它。但它仍然不起作用。
例如,如果数组在第一次调用中为空,并且我想在索引 3 处插入元素,并且array_splice
在array_splice
. 如果数组为空,则插入失败
所以下面的调用
array_insert(array(),array(36,37),3);
生成这个
我错过了什么?!
@edit 预期的结果是:如果我在空数组的第 3 位插入数组('a','b','c'),则结果数组应该允许我通过键 3,'b' 访问 'a'由 4 等。不确定哪个更好,空值来填补空白或关联键。
@edit2
insert(array(),array(1,2),3);
数组(2) { [3]=> int(1) [4]=> int(2) }
$a = array();
$a[2] = 3;
insert($a,array(1,2),1);
数组(3) { 1 => int(1) [2]=> int(2) [3] => int(3) }
insert(array(1,2),array(4,5),1);
数组(4) { [0]=> int(1) 1 => int(4) [2] => int(5) [3] => int(2) }
在性能方面,顺便说一句更好的选择是什么?
javascript - TypeError:baseChoiceList.splice 不是函数
我已经为此工作了 4 个小时,阅读了许多相关的解释并尝试了其中的几个。我确定我错过了一个简单的概念并修复了这个错误。非常感谢您的帮助。
ColorChart.setupAnswerChoices();
baseChoiceList 12,17,1,22,27,NCN
当前选择列表 12,17,1,22,27,NCN
buttonChoice [对象数组]
baseChoiceList [对象字符串]
未捕获的类型错误:baseChoiceList.splice 不是函数
javascript - 如何使用javascript从数组中删除多个值?
我想删除除香蕉以外的所有内容。
arrays - .splice(x,1) 不工作
我使用 Node JS 迈出了第一步,一切都很顺利,直到我遇到一个我既无法理解也无法找到解决方法的奇怪行为。它应该很简单,一切都有据可查,我可以找到很多这种工作的例子,不幸的是,我可能遗漏了一些非常明显的东西。在这失去了将近 2 天之后,我决定寻求一些帮助......在此先感谢。
我正在尝试将对象(clientID、套接字信息)存储在一个数组中,并希望在连接丢失时删除一个对象。
我已经构建了我的代码的一小部分来复制行为。
结果是:
有任何想法吗?
谢谢
php - 提取文本 * 符号之间的信息并将每个数据保存到单独的数组中
我有一个文本文件为“ a.txt
”,
它有一个像图像一样的数据。我想逐行读取此文本文件并将*
符号之间的每个条目保存并保存到单独的array
.
注意:我想将每个信息保存到一个单独的数组中。
我想使用 PHP 代码来做到这一点。
先感谢您。
javascript - 如何订购一个数组依赖于另一个数组
我有两个数组:
- values:包含所有值的数组
- mainValues:带有 mainValues 的列表,这些值已经存在于数组值中,但必须排序。即 mainValues 应该是数组值中的第一个值
我这样解决了这个问题,但我不确定这是否是最佳实践: