1

我有以下字符串数组:

array1 = ["a", "b", "c"]
array2 = ["a", "c", "b"]
array3 = ["a", "b"]
array4 = ["a", "b", "c"]

如何比较数组以便:

array1 is array2 #false
array1 is array3 #false
array1 is array4 #true
4

1 回答 1

3

您不能使用关键字is(编译为===),但可以is向 的原型添加新方法Array

Array::is = (o) ->
  return true if this is o
  return false if this.length isnt o.length
  for i in [0..this.length]
    return false if this[i] isnt o[i]
  true

然后像这样使用它

array1 = ["a", "b", "c"]
array2 = ["a", "c", "b"]
array3 = ["a", "b"]
array4 = ["a", "b", "c"]

alert array1.is array2
alert array1.is array3
alert array1.is array4
于 2012-09-11T09:58:49.720 回答