이 코드를 가지고할당 및 상태 평가
def errorMap = validateParams(params)
if (errorMap) {
flash.errorMap = errorMap
return
}
내 질문은 이것이다 : 나는 같은 하나 라이너를 만들기 위해 라인 # 1, 라인 # 2의 조건의 평가에 할당을 결합 할 수 있습니다 다음 :
if (flash.errorMap = validateParams(params)) {
return
}
이렇게하는 것이 나쁜 습관입니까?
감사
비제이 쿠마르는 매우 좋은 습관이다 내 의견으로는
두 번째 발췌 문장에서 원래 논리가 변경됩니다. 두 번째 예제는 데이터의 유효성에 관계없이 항상 'flash.dataMap'을 덮어 쓰는 반면, 오류 맵이있는 경우 첫 번째 예제 만 덮어 씁니다. – noah
@noah : validateParams (params)가 false와 비슷한 값 (예 : undefined, null, 0 또는 false)을 반환하면 flash.errorMap을 덮어 쓰지 않습니다. 그래서 그는 그 기술에 대한 강점 중 하나 인 원래의 논리를 바꾸지 않을 것입니다. –
@Sune 음, 죄송합니다. 두 번째 코드에서 항상 덮어 씁니다. 두 번째는 flash.errorMap = validateParams (params)와 같습니다. if (flash.errorMap) { return } – noah