添加删除过滤器数组Javascript
1) 我正在寻找内置的jquery函数,它可以从数组中添加/删除/获取项。 或者一个更好的方法来做我在下面做过的同样的事情。虽然下面的代码有效,但我觉得应该有更好的方法 我不太擅长JavaScript,所以这段代码可能看起来很糟糕:) 2) 我正在使用添加删除过滤器数组Javascript,javascript,jquery,arrays,grep,Javascript,Jquery,Arrays,Grep,1) 我正在寻找内置的jquery函数,它可以从数组中添加/删除/获取项。 或者一个更好的方法来做我在下面做过的同样的事情。虽然下面的代码有效,但我觉得应该有更好的方法 我不太擅长JavaScript,所以这段代码可能看起来很糟糕:) 2) 我正在使用 var tempItems = Object.assign({}, addItem(items, elementValue, elementText)) 添加一个项目后,我希望引用位于不同的临时对象中,因为我必须使用主列表和筛选列表。是否有一
var tempItems = Object.assign({}, addItem(items, elementValue, elementText))
添加一个项目后,我希望引用位于不同的临时对象中,因为我必须使用主列表和筛选列表。是否有一种方法可以添加一个项目并获取另一个返回项目的实例
可能Object.assign是我难以添加/删除/获取项目的根本原因
欢迎并赞赏任何建议。谢谢大家! 您可以使用内置javascript函数(不是jquery:):
要返回addItem的新副本,可以使用Object.assign({},…)复制addItems函数本身内部的项。实际上可以使用在数组上工作的本机筛选器方法。应该是这样的:
函数findElement(项、元素值){
让结果=项。过滤器(函数(项){
返回项。值===elementValue;
})
console.log(result);//应输出所需的结果
}
我使用了一些jquery函数,但正如我所说,我需要一个新的副本,我使用的是Object.assign({},addItem(items,elementValue,elementText)),之后所有这些都停止了工作。如果我在数组中添加一个新项并返回一个新数组的副本,而不是引用旧数组或不是对象,所有这些都会起作用。你能举个例子说明怎么做吗?试试:函数addItem(items,elementValue,elementText){const itemsCopy=Object([],items);//这是副本,进行修改并相应返回
。。。
var tempItems = Object.assign({}, addItem(items, elementValue, elementText))
// Finding an item
items.find(function(item) { return item.Value == '3'})
// Removing/filtering out an item (returns a new copy)
items.filter(function(item) { return item.Value !== '3'})