0

여기 전달 요소가 입력 요소가 있는지 확인 작은 작은 jQuery 플러그인이며 비어있는 경우 :이 조건부 논리를 3 진 표현식으로 바꾸려면 어떻게해야합니까?

$.fn.inputIsEmpty = function() { 
    if (!this.is('input:text')) { 
     return false; 
    } else { 
     return $.trim($(this).val()).length == 0; 
    } 
}; 

상기 논리 작품. 그래서 이것을 단조 3 진 표현으로 바꾸려고 시도했습니다.

$.fn.inputIsEmpty = function() { 
    this.is('input:text') ? $.trim($(this).val()).length == 0 : false; 
}; 

하지만 정의가 잘못되었습니다. 무엇이 잘못 되었나요? this.is('input:text')false입니다

return this.is('input:text') && $.trim(this.val()).length === 0; 

경우 false && any boolean에 관계없이 다른 부울 값의 false을 수있는 바와 같이, 두 번째 부분은 평가 될 필요가 없습니다 :

+3

'반품'을 잊어 버렸습니다. – JJJ

+2

Toooooooooo 현지화 – lifetimes

+1

덜 읽을 수 있습니다. –

답변

1

나는 운영자 단락의 사용을 만들 것 . if 문과 같이 작동합니다.

+0

왜 downvote입니까? – Blender

+0

+1, 이것이 최고의 솔루션입니다. 나는 단지 내 대답을 서둘렀다. P – NINCOMPOOP

+0

이것을 좋아한다. - 새로운 것을 오늘 배웠다. - 고마워. –

2
$.fn.inputIsEmpty = function() { 
    return (this.is('input:text') ? ($.trim($(this).val()).length == 0) : false); 
}; 
+0

끝내기 - 돌아 가기 키워드가가는 곳입니다. –

관련 문제