私はcoffeescriptを学んでおり、特定の単語を逆にする次の関数を書きました:
reverse = (word) ->
if word.length is 0
return "empty string"
if word.length is 1
return word
left = 0
right = word.length-1
while left < right
swap(word, left, right)
#[word[left], word[right]] = [word[right], word[left]]
left++
right--
return word
swap = (word, left, right) ->
console.log "#{word[left]} #{word[right]}"
temp = word[left]
word[left] = word[right]
word[right] = temp
console.log "#{word[left]} #{word[right]}"
console.log reverse("coffeescript")
しかし、うまくいきません。スワップ関数自体では、2 つのインデックスの文字が入れ替わることはありません。私は何が欠けていますか?