如何确定对象是否在数组中
我需要确定一个对象是否已经存在于javascript的数组中。
例如(虚拟代码):
var carBrands = [];
var car1 = {name:'ford'};
var car2 = {name:'lexus'};
var car3 = {name:'maserati'};
var car4 = {name:'ford'};
carBrands.push(car1);
carBrands.push(car2);
carBrands.push(car3);
carBrands.push(car4);
现在,“carBrands”数组包含所有实例。我现在正在寻找一个快速的解决方案来检查car1,car2,car3或car4的实例是否已经在carBrands数组中。
例如:
var contains = carBrands.Contains(car1); //<--- returns bool.
car1 和 car4 包含相同的数据,但它们是不同的实例,应将其测试为不相等。
我是否在创建时向对象添加了类似哈希的内容?或者有没有一种更快的方法可以在Javascript中做到这一点。
我在这里寻找最快的解决方案,如果脏,所以它必须是;)在我的应用程序中,它必须处理大约10000个实例。
没有查询