on
자바스크립트에서 Ternary 연산자를 사용하는 방법
자바스크립트에서 Ternary 연산자를 사용하는 방법
반응형
제가 코딩 여행을 시작했을 때, 제게 가장 혼란스러운 개념 중 하나는 악명 높은 삼항 연산자였습니다. 나는 그것이 어떻게 생겼는지는 알 수 있었지만, 그것에 많은 관심을 기울이지 않았다. 대학 다닐 때 잠깐 배웠지만, 사용한 적은 없어요. 왜요? 이해가 안 돼서요.
소프트웨어 개발자로서의 첫 번째 일을 시작하고 나서야 저는 제가 놓쳐왔던 것이 무엇이었는지를 깨달았습니다. 이제 삼항 연산자가 어떻게 작동하는지 더 잘 이해하게 되었기 때문에, 저는 모든 응용분야에서 그것을 종교적으로 사용합니다.
그래서 저는 삼항 연산자가 무엇인지, 어떻게 작동하는지, 그리고 어떻게 응용 프로그램에 구현할 수 있는지 설명하려고 합니다.
시작합시다!
삼항 연산자란 무엇인가?
3항 연산자 또는 조건부 연산자는 if-else 문에 대한 바로 가기 역할을 하는 자바스크립트 개념이다. 아래 예시를 볼 수 있습니다.
조건 ? truty 값
삼항 연산자는 세 개의 피연산자를 취한다. 첫 번째 피연산자는 우리의 조건부 진술이다. 두 번째 피연산자는 우리의 조건이 참일 경우 실행되는 것이고, 또 다른 피연산자는 거짓일 경우 실행되는 것입니다.
이것이 어떻게 작동하는지 실제 사례를 통해 보여드리겠습니다.
위의 예에서는 숫자의 배열에 소수가 포함되어 있는지 여부를 확인한 다음 결과를 콘솔에 기록합니다. 22-26행의 if-else 문장에만 집중한다면, 우리는 이것이 3항 연산자를 활용할 수 있는 완벽한 기회라는 것을 알게 될 것이다.
위의 if-else 문장을 사용하여 다음과 같은 3항 연산자를 사용하여 변환할 수 있습니다.
if-else를 사용하는 것에 비해 이것이 얼마나 깨끗해 보이는지 보세요. 불필요한 코드 줄을 줄일 뿐만 아니라 코드를 더 읽기 쉽게 만듭니다. 위의 조각에서 삼항 연산자가 어떻게 작동하는지 살펴보겠습니다.
위의 토막글에서 우리는 먼저 다음과 같은 질문을 한다: 우리의 변수 prime_존재하는 값이 truthy 값인가? 이 진술 뒤에는 물음표가 붙습니다. 그런 다음, 우리는 콜론 :을 사용하여 조건 값에 따라 실행할 진술을 결정합니다. prime_exists가 truth 값인 경우, line 2를 실행하고, 그렇지 않으면 line 3을 실행합니다.
자, 이제 좀 더 이해가 되네요. 하지만 만약 우리가 내포된 이-엘세 진술이 있다면 어떨까요? 이것도 3항 연산자로 바꿀 수 있나요?
삼항 연산자 내포
사용자 목록을 포함하는 개체 배열이 있다고 가정해 봅시다. 특정 사용자의 ID를 확인하고 싶다고 하면 다음과 같은 작업을 할 수 있습니다.
이 예제에서 내포된 if-else 문에 주목하십시오. 3항 연산자가 바로 가기 역할을 하기 때문에, 우리는 이것을 좀 더 읽기 쉽게 하기 위해 이용할 수 있다.
그게 어떻게 생겼는지 봅시다.
여러분이 무슨 생각을 하고 있는지 압니다. 혼란스러워 보이지만, 여러분이 생각하는 것만큼 나쁘지 않다고 걱정하지 마세요. 좀 더 이치에 맞는 것으로 분류해 봅시다.
이렇게 중첩된 삼항 연산자를 볼 수 있습니다.
첫 번째 조건이 참이면 다음 코드 줄을 실행합니다. 첫 번째 조건이 거짓이면 두 번째 조건으로 건너뛰어 단일 3항 연산자처럼 동일한 절차를 수행합니다.
물론 우리는 삼항 사업자들이 얼마나 깊이 내포되어 있는지에 대해 일종의 제한을 두어야 한다. 비록 우리가 코드의 가독성을 향상시키지만, 3항 연산자의 과도한 중첩은 실제로 가독성을 악화시킬 수 있다. 그래서 우리는 그것을 사용해도 괜찮을 때 우리 자신에게 익숙해져야 합니다.
삼항 연산자 사용 시기
위에서 언급한 바와 같이 모든 상황에서 3항 연산자를 사용하기 시작하면 잠재적으로 코드의 가독성을 해칠 수 있다. 따라서 깊이 내포된 if-else 문장이 있다면 삼항 연산자를 사용하지 않는 것이 가장 좋습니다. 제 경험의 법칙은: 만약 여러분의 if-else 문장이 너무 복잡하거나 두 번 이상 내포되어 있다면, 그냥 내버려두세요.
둘 중 하나를 사용할 경우 성능에는 거의 차이가 없으므로 어떤 것을 사용할지 현명하게 판단하십시오.
앞의 소숫자 예를 봅시다. 3항 연산자를 사용할 수 있는 다른 코드 블록이 있음을 알 수 있습니다.
각 방법에는 또 다른 if-else 문장이 있습니다. 대신 여기서 3항 연산자를 사용하려고 하면 구문 오류가 많이 발생합니다. 이는 코드 블록이 너무 복잡하여 3항 연산자를 사용할 수 없음을 의미한다.
하지만 우리가 할 수 있는 것은 다음과 같습니다.
코드 블록을 자체 함수로 이동하면 이제 3항 연산자를 문제 없이 사용할 수 있습니다. 이것은 조금 더 깔끔해 보이고, 무리하지 않고 가독성을 유지합니다.
결론
우리는 방금 3항 연산자가 if-else 문장의 지름길로 어떻게 사용될 수 있는지 보았다. 이 연산자를 사용하면 성능 저하 없이 코드를 좀 더 읽기 쉽게 만들 수 있습니다. 물론 우리는 여전히 이것을 우리가 원하는 곳, 그리고 그것이 말이 되는 곳에서만 사용하지 않도록 주의해야 한다.
이 개념은 특히 자바스크립트를 처음 접하는 사람들에게는 다소 혼란스러울 수 있지만, 이 기사를 읽음으로써 그것이 어떻게 작동하는지에 대해 빛을 비추는데 도움이 되기를 바란다.
읽어주셔서 감사합니다. 다음 편에서 뵙겠습니다.
from http://it-ground.tistory.com/238 by ccl(A) rewrite - 2021-09-25 05:01:20