使用coffescript删除数组的重复元素

hyp*_*jas 0 javascript jquery coffeescript

我有一个元素重复的数组:

data = ["Ruby on rails", "Ruby on rails", "Jquery", "Coffescript", "Javascript"]
Run Code Online (Sandbox Code Playgroud)

我尝试删除数组的重复元素

indexes = []
uniques = []
i = 0
while i < data.length
 if indexes[data[i].text] is "undefined"
  indexes[data[i].text] = "defined"
  uniques.push
i++
console.log data
Run Code Online (Sandbox Code Playgroud)

但是我得到了与元素重复相同的结果.

我怎么修好?

谢谢!

Ber*_*rgi 5

… is "undefined"
Run Code Online (Sandbox Code Playgroud)

确实被编译到了=== "undefined",这不是你想要的.删除不与字符串进行比较的引号,但删除undefined值.

顺便说一句,你的脚本应该是

index = {}
uniques = []

for text in data
 unless (text of index)
  index[text] = true
  uniques.push(text)
Run Code Online (Sandbox Code Playgroud)

甚至像过滤器理解一样

index = {}
uniques = for text in data when not (text of index)
 index[text] = true
 text
Run Code Online (Sandbox Code Playgroud)