æã«ã¯ãæ¡ä»¶ã«åºã¥ãç°ãªãã¢ã¯ã·ã§ã³ãå®è¡ããå¿ è¦ãããã¾ãã
ãã®ããã® if æã¨ã âçåç¬¦â æ¼ç®åã¨ãå¼ã°ããæ¡ä»¶ä»ãæ¼ç®å(3é
æ¼ç®å) "?" ãããã¾ãã
âifâ æ
âifâ æã¯ä¸ããããæ¡ä»¶ãè©ä¾¡ãã¾ããçµæã true ã§ããã°ã³ã¼ããå®è¡ãã¾ãã
ä¾:
let year = prompt('In which year was ECMAScript-2015 specification published?', '');
if (year == 2015) alert( 'You are right!' );
ä¸ã®ä¾ã¯ãã·ã³ãã«ãªç価ãã§ãã¯(year == 2015)ã§ãããããè¤éã«ãããã¨ãã§ãã¾ãã
å®è¡ããæãè¤æ°ããå ´åãã³ã¼ããããã¯ãæ³¢æ¬å¼§ã§å²ãå¿ è¦ãããã¾ãã:
if (year == 2015) {
alert( "That's correct!" );
alert( "You're so smart!" );
}
ãã¨ã1ã¤ã®æãããªãå ´åã§ã if ã使ç¨ããã¨ãã¯æ³¢æ¬å¼§ {} ã§ã³ã¼ããããã¯ãå²ããã¨ãæ¨å¥¨ãã¾ããããã¯å¯èªæ§ãåä¸ããã¾ãã
Boolean 夿
if (â¦) æã¯æ¬å¼§ã®ä¸ã®å¼ãè©ä¾¡ããBooleanåã«å¤æãã¾ãã
ãã£ãã¿ã¼ å夿 ã®å¤æã«ã¼ã«ãæãåºãã¦ã¿ã¾ããã:
- æ°å¤
0, 空æå"",null,undefinedããã¦NaNã¯falseã«ãªãã¾ãããã®ãããããã㯠âå½ã¨ã¿ãªãããâ å¤ã¨ãã°ãã¦ãã¾ãã - ä»ã®å¤ã¯
trueã«ãªããããâçã¨ã¿ãªãããâ å¤ã¨å¼ã°ãã¾ãã
ãã¦ãä¸ã®ã³ã¼ãã§ãããã®æ¡ä»¶ã¯æ±ºãã¦å®è¡ããã¾ãã:
if (0) { // 0 ã¯å½
...
}
ã¾ãããã®æ¡ä»¶ã¯ â 常ã«å¦çããã¾ã:
if (1) { // 1 ã¯ç
...
}
次ã®ããã«äºåè©ä¾¡ãããBoolå¤ã if ã«éããã¨ãã§ãã¾ã:
let cond = (year == 2015); // == 㯠true ã¾ã㯠false ãè©ä¾¡ãã
if (cond) {
...
}
âelseâ å¥
if æã¯ä»»æã® âelseâ ãããã¯ãæã¤å ´åããããããã¯æ¡ä»¶ãå½ã®å ´åã«å®è¡ããã¾ãã
ä¾:
let year = prompt('In which year was ECMAScript-2015 specification published?', '');
if (year == 2015) {
alert( 'You guessed it right!' );
} else {
alert( 'How can you be so wrong?' ); // 2015 以å¤ã®ã±ã¼ã¹
}
ããã¤ãã®æ¡ä»¶: âelse ifâ
ããã¤ãã®æ¡ä»¶ã®ãã¿ã¼ã³ããã¹ããããæãããã¾ãããã®ããã« else if å¥ãããã¾ãã
ä¾:
let year = prompt('In which year was ECMAScript-2015 specification published?', '');
if (year < 2015) {
alert( 'Too early...' );
} else if (year > 2015) {
alert( 'Too late' );
} else {
alert( 'Exactly!' );
}
ä¸ã®ã³ã¼ãã§ãJavaScriptã¯æåã« year < 2015 ããã§ãã¯ãã¾ãããããå½ã®å ´åãæ¬¡ã®æ¡ä»¶ year > 2015 ã®å¤å®ãè¡ãã¾ãããããã¾ãå½ã®å ´åãæå¾ã® alert ã表示ãã¾ãã
è¤æ°ã® else if ãããã¯ãæã¤ãã¨ãã§ãã¾ããæå¾ã® else ã¯ä»»æã§ãã
3é æ¼ç®å â?â
æ¡ä»¶ã«ä¾åãã¦å¤æ°ã¸ä»£å ¥ãè¡ãå¿ è¦ãããå ´åãããã¾ãã
ä¾:
let accessAllowed;
let age = prompt('How old are you?', '');
if (age > 18) {
accessAllowed = true;
} else {
accessAllowed = false;
}
alert(accessAllowed);
ãããããâæ¡ä»¶ä»ãâ ããã㯠âçåç¬¦â æ¼ç®åã§ã¯ãããçãç°¡åã«è¡ããã¨ãã§ãã¾ãã
æ¼ç®åã¯çå符 "?" ã§è¡¨ããã¾ããæ¼ç®åã3ã¤ã®ãªãã©ã³ããæã¤ãã¨ããã âä¸é
æ¼ç®åâ ã¨å¼ã°ãããã¨ãããã¾ããããã¯ãJavaScriptã®ä¸ã§3ã¤ã®ãªãã©ã³ããæã¤å¯ä¸ã®æ¼ç®åã§ãã
æ§æã¯æ¬¡ã®éãã§ã:
let result = condition ? value1 : value2
condition ã¯è©ä¾¡ããããããçã§ããã°ãvalue1 ãè¿å´ãããããã§ãªããã° â value2 ã«ãªãã¾ãã
ä¾:
let accessAllowed = (age > 18) ? true : false;
æè¡çã«ã¯ãage > 18 ã®å¨ãã®æ¬å¼§ãçããã¨ãã§ãã¾ããçå符æ¼ç®åã¯ä½ãåªå
é ä½ãæã£ã¦ããã®ã§ãæ¯è¼ > ã®å¾ã«å®è¡ããã¾ãã
以ä¸ã®ä¾ã¯ä¸ã®ä¾ã¨åãããã«åä½ãã¾ã:
// æ¯è¼æ¼ç®å "age > 18" ãæåã«å®è¡ããã¾ã
// (丸æ¬å¼§ã§å²ãå¿
è¦ã¯ããã¾ãã)
let accessAllowed = age > 18 ? true : false;
ããããæ¬å¼§ã¯ã³ã¼ãã®å¯èªæ§ãããè¯ããã¾ãããã®ãããæ¬å¼§ã使ããã¨ãæ¨å¥¨ããã¾ãã
ä¸ã®ä¾ã§ã¯ãæ¯è¼èªä½ã true/false ãè¿ããããçå符æ¼ç®åãåé¿ãããã¨ãå¯è½ã§ãã
// the same
let accessAllowed = age > 18;
è¤æ°ã® â?â
é£ç¶ããçå符 "?" æ¼ç®åã¯1ã¤ä»¥ä¸ã®æ¡ä»¶ã«ä¾åããå¤ãè¿ããã¨ãã§ãã¾ãã
ä¾:
let age = prompt('age?', 18);
let message = (age < 3) ? 'Hi, baby!' :
(age < 18) ? 'Hello!' :
(age < 100) ? 'Greetings!' :
'What an unusual age!';
alert( message );
æåããããä½ããã¦ããã®ãæ´ãã®ãé£ããããããã¾ããããããããè¦ãã¨ããããã ã®é常ã®ä¸é£ã®ãã¹ãã§ãããã¨ããããã¾ãã
- æåã®çå符ã¯
age < 3ãã©ãããã§ãã¯ãã¾ãã - çã®å ´å â
'Hi, baby!'ãè¿ãã¾ããããã§ãªããã° â ã³ãã³":"ã®å¾ã«è¡ããage < 18ããã§ãã¯ãã¾ãã - ãããçã§ããã° â
'Hello!'ãè¿ãã¾ããããã§ãªããã° â ã³ãã³":"ã®å¾ã«è¡ããage < 100ããã§ãã¯ãã¾ãã - ãããçã§ããã° â
'Greetings!'ãè¿ãã¾ããããã§ãªããã° â ã³ãã³":"ã®å¾ã«è¡ããWhat an unusual ageãè¿ãã¾ãã
if..else ã使ã£ãåããã¸ãã¯ã§ã:
if (age < 3) {
message = 'Hi, baby!';
} else if (a < 18) {
message = 'Hello!';
} else if (age < 100) {
message = 'Greetings!';
} else {
message = 'What an unusual age!';
}
éä¼çµ±ç㪠â?â ã®ä½¿ç¨
æã
ãçå符 '?' 㯠if ã®ç½®æã¨ãã¦ä½¿ããã¾ã:
let company = prompt('Which company created JavaScript?', '');
(company == 'Netscape') ?
alert('Right!') : alert('Wrong.');
æ¡ä»¶ company == 'Netscape' ã«å¿ãã¦ã"?" ã®å¾ã®1ã¤ç®ãããã¯2ã¤ç®ã®é¨åãå®è¡ããã¢ã©ã¼ãã表示ããã¾ãã
ããã§ã¯å¤æ°ã«çµæãä»£å ¥ãã¦ãã¾ããããã®ã¢ã¤ãã¢ã¯æ¡ä»¶ã«å¿ãã¦ç°ãªãã³ã¼ããå®è¡ããããã®ã§ãã
ãã®ãããªæ¹æ³ã§çå符æ¼ç®åã使ããã¨ã¯æ¨å¥¨ããã¦ãã¾ããã
表è¨ã¯ if ãããçãããã«è¦ããä¸é¨ã®ããã°ã©ãã«ã¯é
åçã§ãããããããã¯èªã¿ã«ããã§ãã
æ¯è¼ã¨ã㦠if ã使ã£ãåãã³ã¼ãã§ã:
let company = prompt('Which company created JavaScript?', '');
if (company == 'Netscape') {
alert('Right!');
} else {
alert('Wrong.');
}
ç§ãã¡ã®ç®ã¯ã³ã¼ãã縦ã«è¦ã¦ããã¾ããè¤æ°è¡ã«ã¾ãããæ§é ã¯ãé·ãæ°´å¹³ãªå½ä»¤ã»ãããããçè§£ããããã§ãã
çå符 '?' ã®ç®çã¯ãæ¡ä»¶ã«ãã£ã¦å¥ã®å¤ãè¿ããã¨ã§ããã¾ãã«ãã®ããã«ä½¿ã£ã¦ãã ãããç°ãªãã³ã¼ãã®æèãå®è¡ããããã« if ãããã¾ãã
ã³ã¡ã³ã
<code>ã¿ã°ã使ã£ã¦ãã ãããè¤æ°è¡ã®å ´åã¯<pre>ãã10è¡ãè¶ ããå ´åã«ã¯ãµã³ãããã¯ã¹ã使ã£ã¦ãã ãã(plnkr, JSBin, codepenâ¦)ã