所以,我看了这段代码:
removeOrder = (order) ->
index = listOfOrders.indexOf(order)
if index isnt -1
listOfOrders.splice index, 1
order
像这样的对象在哪里:
order = {
id: whatever
field1: whatever
...
}
现在这是有效的,因为order
作为参数传递的引用了中的某个对象listOfOrders
,例如removeOrder(listOfOrders[i])
。但是我的问题是,这安全吗?我的意思是,我认为最好遍历订单列表,然后搜索具有相同ID的对象,然后将其删除。
据我所知indexOf
,当我们要搜索的对象是“简单”对象(数字,字符串等)时,就可以了。
根据indexOf的这些文档,indexOf使用严格相等===
。
var a = {id:1};
var b = {id:1};
a === a; // this is true
a === b; // this is false
因此对于对象来说通常是安全的
您确实需要在拼接之前检查indexOf!= -1
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句