세 가지 연산자의 세계에 오신 것을 환영합니다.
6645 단어 PHPJavaScript삼원 연산자
입문
세 가지 연산자를 사용합니까?
며칠 전 후배@miriwo가 기쁜 세 가지 계산을 깨우쳐 기쁜 일이라고 집필했다.
PHP "?:"의 정체를 알고 상큼하면
응, 제목만 보면 엘비스 산수에 각성한 건지 궁금해.
그것은 매우 편리하다.
삼원 연산자
우리 예를 하나 봅시다.
전재방: https://chiicomi.com/smp/r_news_detail?id=19e92c3c-0b86-11e6-8bd0-a0369f7b8e6e
이것은 우리 제프 연합시 원지바의 마스코트 제비와 유니티다.
(분명 지바) 아키타의 쌍둥이 강아지는 캐릭터 디자인상 크기와 등번호를 제외하고는 구분할 수 없다.
어느 정도 제프 사포라면 "정확한 건 제피, 장난꾸러기 건 유니티", "귀가 바삭한 건 제피, 동그란 귀는 유니티"같은 말을 할 거예요.다른 사포에게 제프사포는 머리가 우습다고 여겨져 들리지 않기 때문이다.
그래서 만약 개의 등번호가 2이라면 나는 자바스크립트로 제비를 써서 2가 아닌 유니티를 name
코드에 대입시켰다.const name = (dog.uniform_number === 2) ? 'Jefy' : 'Unity';
?
왼쪽은 판정 조건, 오른쪽은 true
판정 시 값, 칸막이 :
오른쪽은 false
판정 시 값.
가끔씩 세 가지 산수 부정파가 이걸 쓰면 이런 느낌이야.const name = '';
if(dog.uniform_number === 2){
name = 'Jefy';
} else {
name = 'Unity';
}
길다...
중요한 것은 이는if문이 아니라 공식으로 간단하게 표현된 세 가지 연산자이다.
사실 본명은'조건 연산자'라고 한다.
세 가지 연산자는 많은 언어에서 실현된다.
중첩된 삼원 연산자
너무 많이 할 수는 없지만, 세 가지 연산자 중첩 (중첩) 은 쓸 수 있다.
우리 예를 하나 봅시다.
사실 제프의 마스코트는 제비와 유니티의 수컷 쌍둥이뿐만 아니라 어딘지 모르게 작은 미라는 하얀 잡종 암캐도 있다.사진 맨 오른쪽에 있는 애죠?
그나저나 제비와 유니티는 매년 시계를 사는 일반 지지자인 것 같다. 모두 제프 연합 주식회사의 직원이다.
그런 설정은 물론이고 여러분의 등번호는 지지자 번호로 불리는 12번입니다.그러니까 이런 느낌이 든다는 거야.const name = (dog.uniform_number === 2) ? 'Jefy' : (dog.uniform_number === 9) ? 'Unity' : 'Mina-chang';
어때요?보기 흉해서 대머리처럼 보인다.
보기 쉬운 기교로 기호 앞에서 줄을 바꾸다.
외국인이 쓴 코드에서 자주 볼 수 있겠지.const name = (dog.uniform_number === 2)
? 'Jefy'
: (dog.uniform_number === 9)
? 'Unity'
: 'Mina-chang';
다만, 이 중첩된 세 가지 연산자는 PHP가 왜 동작이 다른지 모르겠다.왜 그는 오른쪽에서 평가했는지 몰라서 괄호로 이렇게 쓰지 않는다.$name = (dog.uniform_number === 2)
? 'Jefy'
: ( (dog.uniform_number === 9)
? 'Unity'
: 'Mina-chang');
불모감이 대단한데..
※ 추적
@rana_kualu 선생님께서 저에게 주신 평어는 괄호를 사용하지 않는 세 가지 연산자의 삽입은 PHP7.4부터 추천하지 않고 PHP8부터 잘못된 것입니다.
참조: [PHP8.0] PHP의 세 가지 연산자는 다른 언어의 실현에 더욱 가깝다
끝내다
세 가지 산자의 특수한 묘사법으로 엘비스 산자와 null이 합체한 산자는 다음에 쓴다.
그럼 안녕히 계세요!Enjoy, Summer!!
Reference
이 문제에 관하여(세 가지 연산자의 세계에 오신 것을 환영합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/layzy_glp/items/fbcc6b166ac72b7b6c19
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
우리 예를 하나 봅시다.
전재방: https://chiicomi.com/smp/r_news_detail?id=19e92c3c-0b86-11e6-8bd0-a0369f7b8e6e
이것은 우리 제프 연합시 원지바의 마스코트 제비와 유니티다.
(분명 지바) 아키타의 쌍둥이 강아지는 캐릭터 디자인상 크기와 등번호를 제외하고는 구분할 수 없다.
어느 정도 제프 사포라면 "정확한 건 제피, 장난꾸러기 건 유니티", "귀가 바삭한 건 제피, 동그란 귀는 유니티"같은 말을 할 거예요.다른 사포에게 제프사포는 머리가 우습다고 여겨져 들리지 않기 때문이다.
그래서 만약 개의 등번호가 2이라면 나는 자바스크립트로 제비를 써서 2가 아닌 유니티를
name
코드에 대입시켰다.const name = (dog.uniform_number === 2) ? 'Jefy' : 'Unity';
?
왼쪽은 판정 조건, 오른쪽은 true
판정 시 값, 칸막이 :
오른쪽은 false
판정 시 값.가끔씩 세 가지 산수 부정파가 이걸 쓰면 이런 느낌이야.
const name = '';
if(dog.uniform_number === 2){
name = 'Jefy';
} else {
name = 'Unity';
}
길다...중요한 것은 이는if문이 아니라 공식으로 간단하게 표현된 세 가지 연산자이다.
사실 본명은'조건 연산자'라고 한다.
세 가지 연산자는 많은 언어에서 실현된다.
중첩된 삼원 연산자
너무 많이 할 수는 없지만, 세 가지 연산자 중첩 (중첩) 은 쓸 수 있다.
우리 예를 하나 봅시다.
사실 제프의 마스코트는 제비와 유니티의 수컷 쌍둥이뿐만 아니라 어딘지 모르게 작은 미라는 하얀 잡종 암캐도 있다.사진 맨 오른쪽에 있는 애죠?
그나저나 제비와 유니티는 매년 시계를 사는 일반 지지자인 것 같다. 모두 제프 연합 주식회사의 직원이다.
그런 설정은 물론이고 여러분의 등번호는 지지자 번호로 불리는 12번입니다.그러니까 이런 느낌이 든다는 거야.const name = (dog.uniform_number === 2) ? 'Jefy' : (dog.uniform_number === 9) ? 'Unity' : 'Mina-chang';
어때요?보기 흉해서 대머리처럼 보인다.
보기 쉬운 기교로 기호 앞에서 줄을 바꾸다.
외국인이 쓴 코드에서 자주 볼 수 있겠지.const name = (dog.uniform_number === 2)
? 'Jefy'
: (dog.uniform_number === 9)
? 'Unity'
: 'Mina-chang';
다만, 이 중첩된 세 가지 연산자는 PHP가 왜 동작이 다른지 모르겠다.왜 그는 오른쪽에서 평가했는지 몰라서 괄호로 이렇게 쓰지 않는다.$name = (dog.uniform_number === 2)
? 'Jefy'
: ( (dog.uniform_number === 9)
? 'Unity'
: 'Mina-chang');
불모감이 대단한데..
※ 추적
@rana_kualu 선생님께서 저에게 주신 평어는 괄호를 사용하지 않는 세 가지 연산자의 삽입은 PHP7.4부터 추천하지 않고 PHP8부터 잘못된 것입니다.
참조: [PHP8.0] PHP의 세 가지 연산자는 다른 언어의 실현에 더욱 가깝다
끝내다
세 가지 산자의 특수한 묘사법으로 엘비스 산자와 null이 합체한 산자는 다음에 쓴다.
그럼 안녕히 계세요!Enjoy, Summer!!
Reference
이 문제에 관하여(세 가지 연산자의 세계에 오신 것을 환영합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/layzy_glp/items/fbcc6b166ac72b7b6c19
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
const name = (dog.uniform_number === 2) ? 'Jefy' : (dog.uniform_number === 9) ? 'Unity' : 'Mina-chang';
const name = (dog.uniform_number === 2)
? 'Jefy'
: (dog.uniform_number === 9)
? 'Unity'
: 'Mina-chang';
$name = (dog.uniform_number === 2)
? 'Jefy'
: ( (dog.uniform_number === 9)
? 'Unity'
: 'Mina-chang');
세 가지 산자의 특수한 묘사법으로 엘비스 산자와 null이 합체한 산자는 다음에 쓴다.
그럼 안녕히 계세요!Enjoy, Summer!!
Reference
이 문제에 관하여(세 가지 연산자의 세계에 오신 것을 환영합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/layzy_glp/items/fbcc6b166ac72b7b6c19텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)