【发布时间】:2016-08-11 00:57:52
【问题描述】:
我有一个类,有一个像这样的变量:
@tags = { 'tag-test': [ 'ZnVuY3Rpb24gcmFuZG9tKCkgeyBbbmF0aXZlIGNvZGVdIH0xNDcwODI4MzQ4Mzk3TmFO' ] }
现在我正在尝试检查所有索引,然后删除其中一个值(如果有):
rmtag = (t) ->
i = @tags[t].indexOf socket.uid
console.log "Checking tag " + t + " index is " + i
if i != -1
console.log "Removing " + i
@tags[t].splice i, 1
rmtag = rmtag.bind @
for d, i in @tags
rmtag i
在这种情况下,socket.uid 的值为 ZnVuY3Rpb24gcmFuZG9tKCkgeyBbbmF0aXZlIGNvZGVdIH0xNDcwODI4MzQ4Mzk3TmFO。
关于为什么这不起作用的任何想法?
【问题讨论】:
-
也许最好的方法是使用过滤器,例如
tags[i].filter((tag) => tag != socket.uid )? -
出于某种原因,for 循环甚至没有执行一次。如果我在for循环之前
console.log @tags,它有一个条目。
标签: node.js coffeescript