CoffeeScript에서 for
루프의 출력을 참조하는 올바른 방법이 있습니까? 내부 변수 _results
을 사용하는 것은 시간이 걸리는 것처럼 보이지만 일부 상황에서는 작동합니다 (아래 참조). 안정적인 축전지를 참조하는 "올바른"방법이 있습니까?for 루프 동안 accumulator를 참조하는 것이 안전합니까?
작품
Array::unique = ->
value for value in this when not (value in _results)
가 작동하지 않습니다는
Array::unique = ->
_results = null
value for value in this when not (value in _results)
은 또한 일 (_results2
에 반복자의 이름을 변경)하지 않는
Array::unique = ->
value for value in (value for value in this) when not (value in _results)
어떠한 경우에도 누적기에 접근 할 수 없어야합니다. 당신이 필요하다고 생각하면, 당신은 뭔가 잘못하고 있습니다. 어큐뮬레이터의 이름은 경고없이 변경 될 수 있으므로 사용하지 마십시오. 첫 번째 예가 github (https://github.com/jashkenas/coffee-script/issues/1637)의 버그로보고되었습니다. –
@Aaron 그건 내 가정이었다. 나는 첫 번째 예가 효과가 있었음에도 놀랐다. –