CoffeeScript는이 규칙에 실제로 영향을 미치지 않습니다. 이 규칙은 선언과 관련이 없지만 커피 스크립트 은에 선언이 있습니다. @muistooshort 말했듯이, 여기에 커피 스크립트 함수 선언이다 :
functionName = (arg1, arg2) ->
functionBodyLine1
functionBodyLine2
그 괄호는 선언에 선택적 인수가없는 경우. 그것은 완벽하게 괜찮 및 스텝 다운 규칙을 다음과
highLevel = ->
doSomethingAlmostAsHighLevel1()
doSomethingAlmostAsHighLevel2()
doSomethingAlmostAsHighLevel1 = ->
doSomethingALittleLowerLevel1()
...
참고하여 편집에 대해 : 여기에 행동 커피 스크립트의 스텝 다운 규칙의 예입니다. 샘플에 어떤 문제가 있습니까?
는이 책에서 언급하지만, 삼촌 밥은 나에게 분명히 두 가지 기능을 할 때되지 않음 - 추상 같은 수준이 - 같은 낮은 수준의 기능을 사용하여, 그들과 같이 주문해야 :
highLevel1 = -> lowLevel()
highLevel2 = -> lowLevel()
lowLevel = -> ...
'F를 = (x) -> ...'함수 선언으로 간주합니까? 그리고 당신은이 * Stepdown Rule이 말하는 것에 대해 좀 더 명쾌하게되기를 원할 것입니다. –
스텝 다운 규칙 : "우리는 모든 기능을 다음 수준의 추상화 단계에서 따라야합니다." 이것은 선언되지 않은 다음 레벨 함수를 사용할 수 있음을 의미합니다. – user2666750