ãªãã¸ã§ã¯ãã使ç¨ããã¨ããã¼ä»ãã®å¤ã®ã³ã¬ã¯ã·ã§ã³ãæ ¼ç´ãããã¨ãã§ãã¾ãã
ããããå®éã«ã¯å¤ãã®é »åº¦ã§ é åºä»ãããã³ã¬ã¯ã·ã§ã³ ãå¿ è¦ã§ãããã¨ããããã¾ããããã¯ã1ã¤ç®ã2ã¤ç®ã3ã¤ç®â¦ ã¨è¨ã£ãè¦ç´ ã§ãããä¾ãã°ã¦ã¼ã¶ãååãHTMLè¦ç´ ãªã©ä½ãã®ãªã¹ããæ ¼ç´ãã¾ãã
ããã§ãªãã¸ã§ã¯ãã使ãã®ã¯ä¾¿å©ã§ã¯ããã¾ããããªããªãããªãã¸ã§ã¯ãã«ã¯è¦ç´ ã®é åºã管çããããã®ã¡ã½ããã¯æä¾ããã¦ããªãããã§ããæ¢åã®ãªã¹ãã® âéã«â æ°ããããããã£ãæ¿å ¥ãããã¨ã¯ã§ãã¾ããããªãã¸ã§ã¯ãã¯ãã®ããã«ä½¿ããã®ã§ã¯ããã¾ããã
é åºä»ããããã³ã¬ã¯ã·ã§ã³ãæ ¼ç´ããããã«ãArray ã¨å¼ã°ããç¹å¥ãªãã¼ã¿æ§é ãããã¾ãã
宣è¨
空ã®é åãä½ã2ã¤ã®æ§æãããã¾ã:
let arr = new Array();
let arr = [];
ã»ã¼ãã¹ã¦ã®ã±ã¼ã¹ã§2ã¤ç®ã®æ§æã使ããã¾ããè§æ¬å¼§ã®ä¸ã«åæå¤ã¨ãªãè¦ç´ ãæå®ãããã¨ãã§ãã¾ã:
let fruits = ["Apple", "Orange", "Plum"];
é åè¦ç´ ã¯ã¼ãããå§ã¾ãçªå·ãä»ãããã¾ãã
è§æ¬å¼§ã«ãã®çªå·ãæå®ãããã¨ã§ã該å½ããè¦ç´ ãåå¾ãããã¨ãã§ãã¾ã:
let fruits = ["Apple", "Orange", "Plum"];
alert( fruits[0] ); // Apple
alert( fruits[1] ); // Orange
alert( fruits[2] ); // Plum
è¦ç´ ã®ç½®ãæããå¯è½ã§ã:
fruits[2] = 'Pear'; // now ["Apple", "Orange", "Pear"]
â¦ãããã¯ãé åã«æ°ãããã®ã追å ãããã¨ãã§ãã¾ã:
fruits[3] = 'Lemon'; // now ["Apple", "Orange", "Pear", "Lemon"]
é
åå
ã®è¦ç´ ã®ç·æ°ã¯ããã® length ã§åå¾ã§ãã¾ã:
let fruits = ["Apple", "Orange", "Plum"];
alert( fruits.length ); // 3
alert ã使ããã¨ã§ããã¹ã¦ã®é
åã表示ãããã¨ãå¯è½ã§ãã
let fruits = ["Apple", "Orange", "Plum"];
alert( fruits ); // Apple,Orange,Plum
é åã¯ã©ããªåã®è¦ç´ ãæ ¼ç´ãããã¨ãã§ãã¾ãã
ä¾:
// å¤ã®æ··å¨
let arr = [ 'Apple', { name: 'John' }, true, function() { alert('hello'); } ];
// ã¤ã³ããã¯ã¹ 1 ã®ãªãã¸ã§ã¯ããåå¾ãããã®ååã表示
alert( arr[1].name ); // John
// ã¤ã³ããã¯ã¹ 3 ã®é¢æ°ãåå¾ããå®è¡
arr[3](); // hello
é åã¯ããªãã¸ã§ã¯ãã®ããã«ã«ã³ãã§çµããå ´åãããã¾ã:
let fruits = [
"Apple",
"Orange",
"Plum",
];
ãã¹ã¦ã®è¡ãåãããã«ãªãã®ã§ãâæ«å°¾ã®ã«ã³ãâ ã¯é ç®ã®æ¿å ¥ãåé¤ã容æã«ãªãã¾ãã
pop/push, shift/unshift ã¡ã½ãã
ãã¥ã¼(queue) ã¯é åã§æãä¸è¬çã«ä½¿ããããã®ã®ï¼ã¤ã§ããã³ã³ãã¥ã¼ã¿ã»ãµã¤ã¨ã³ã¹ã§ã¯ãããã¯2ã¤ã®æä½ããµãã¼ãããè¦ç´ ã®é åºä»ãã³ã¬ã¯ã·ã§ã³ãæå³ãã¾ãã:
pushã¯è¦ç´ ãæ«å°¾ã«è¿½å ãã¾ããshiftã¯æåããè¦ç´ ãåå¾ãã2çªç®ã®è¦ç´ ã1çªç®ã«ãªãããã«ãã¥ã¼ãé²ãã¾ãã
é åã¯ä¸¡æ¹ã®æä½ããµãã¼ããã¾ãã
å®è·µã§ã¯ãé常ã«é »ç¹ã«ãããè¦ã¾ããä¾ãã°ç»é¢ã«è¡¨ç¤ºãå¿ è¦ãªã¡ãã»ã¼ã¸ã®ãã¥ã¼ã§ãã
é åã®å¥ã®ã¦ã¼ã¹ã±ã¼ã¹ãããã¾ã â ã¹ã¿ãã¯(stack) ã¨å¼ã°ãããã¼ã¿æ§é ã§ãã
ããã¯2ã¤ã®æä½ããµãã¼ããã¾ãã
pushã¯è¦ç´ ãæ«å°¾ã«è¿½å ãã¾ã.popã¯æ«å°¾ããè¦ç´ ãåãåºãã¾ãã
ãªã®ã§ãæ°ããè¦ç´ ã¯å¸¸ã« âæ«å°¾â ãã追å ã¾ãã¯åå¾ããã¾ãã
ã¹ã¿ãã¯ã¯ãé常ã«ã¼ãã®ããã¯ã¨ãã¦ä¾ãããã¾ããæ°ããã«ã¼ããä¸ã«è¿½å ãããããã«ã¼ããä¸ããåãåºããã¾ãï¼
ã¹ã¿ãã¯ã®å ´åãææ°ã®ããã·ã¥ãããã¢ã¤ãã ãæåã«åãåããã¾ããããã¯LIFOï¼Last-In-First-Outï¼ã®ååã¨ãå¼ã°ãã¾ãã ãã¥ã¼ã®å ´åãFIFOï¼First-In-First-Outï¼ãããã¾ãã
JavaScriptã®é åã¯ããã¥ã¼ã¨ã¹ã¿ãã¯ã©ã¡ãã¨ãã¦ãåä½ãã¾ãããããã®è¦ç´ ã使ç¨ããã¨ãè¦ç´ ãå é ã¾ãã¯æå¾ã«è¿½å /åé¤ãããã¨ãã§ãã¾ãã
ã³ã³ãã¥ã¼ã¿ãµã¤ã¨ã³ã¹ã§ã¯ãããã許å¯ãããã¼ã¿æ§é ã両端ãã¥ã¼/ããã¯(deque)ã¨å¼ã³ã¾ãã
é åã®æ«å°¾ã§åä½ããã¡ã½ãã:
pop-
é åã®æå¾ã®è¦ç´ ãæ½åºãã¦è¿ãã¾ãã:
let fruits = ["Apple", "Orange", "Pear"]; alert( fruits.pop() ); // "Pear" ãåé¤ã alert ãã alert( fruits ); // Apple, Orange push-
é åã®æ«å°¾ã«è¦ç´ ã追å ãã¾ãã:
let fruits = ["Apple", "Orange"]; fruits.push("Pear"); alert( fruits ); // Apple, Orange, Pearfruits.push(...)å¼ã³åºãã¯fruits[fruits.length] = ...ã¨åãã§ãã
é åã®å é ã§åä½ããã¡ã½ãã:
shift-
é åã®å é ã®è¦ç´ ãæ½åºãã¦è¿ãã¾ãã:
let fruits = ["Apple", "Orange", "Pear"]; alert( fruits.shift() ); // Apple ãåé¤ã alert ãã alert( fruits ); // Orange, Pear unshift-
é åã®å é ã«è¦ç´ ã追å ãã¾ãã:
let fruits = ["Orange", "Pear"]; fruits.unshift('Apple'); alert( fruits ); // Apple, Orange, Pear
ã¡ã½ãã push 㨠unshift ã¯ä¸åº¦ã«è¤æ°ã®è¦ç´ ãæä½ãããã¨ãã§ãã¾ã:
let fruits = ["Apple"];
fruits.push("Orange", "Peach");
fruits.unshift("Pineapple", "Lemon");
// ["Pineapple", "Lemon", "Apple", "Orange", "Peach"]
alert( fruits );
å é¨è©³ç´°
é
åã¯ç¹å¥ãªç¨®é¡ã®ãªãã¸ã§ã¯ãã§ãããããã㣠arr[0] ã«ã¢ã¯ã»ã¹ããããã«ä½¿ãè§æ¬å¼§ã¯ãå®éã«ã¯ãªãã¸ã§ã¯ãæ§æããæ¥ã¦ãã¾ããæ°åããã¼ã¨ãã¦ä½¿ç¨ããã¾ãã
é
åã¯ãã¼ã¿ã®é åºä»ãã³ã¬ã¯ã·ã§ã³ã¨ãlength ããããã£ãå¦çããç¹å¥ãªã¡ã½ãããæä¾ãããããªãã¸ã§ã¯ããæ¡å¼µãã¾ããããããã³ã¢ã§ã¯ã¾ã ãªãã¸ã§ã¯ãã§ãã
JavaScriptã«ã¯7ã¤ã®åºæ¬ã¿ã¤ããããªããã¨ã«æ³¨æãã¦ãã ããã é åã¯ãªãã¸ã§ã¯ãã§ããããããªãã¸ã§ã¯ãã®ããã«åä½ãã¾ãã
ä¾ãã°ãããã¯åç §ã¨ãã¦ã³ãã¼ããã¾ã:
let fruits = ["Banana"]
let arr = fruits; // åç
§ã«ããã³ãã¼ (2ã¤ã®å¤æ°ã¯åãé
åãåç
§ãã)
alert( arr === fruits ); // true
arr.push("Pear"); // åç
§ããé
åã夿´ãã
alert( fruits ); // Banana, Pear - 2 ã¤ã®é
ç®ã«ãªã£ã¦ãã¾ã
â¦ãããé åãæ¬å½ã«ç¹å¥ã«ããã®ã¯ããã®å é¨è¡¨ç¾ã§ããã¨ã³ã¸ã³ã¯ããã®ãã£ãã¿ã¼ã®å³ã«ç¤ºããã¦ããããã«é£ç¶ããã¡ã¢ãªé åã«è¦ç´ ãæ ¼ç´ãããã¨ãã¾ããããã¦é åãé常ã«é«éã«ããããã«ãä»ã®æé©åãè¡ããã¾ãã
ããããâé åºä»ããããã³ã¬ã¯ã·ã§ã³â ã¨ãã¦é åãå¦çããã®ããããæ®éã®ãªãã¸ã§ã¯ãã®ããã«æ±ãå§ããã¨ããããã¯ãã¹ã¦å£ãã¾ãã
ä¾ãã°ãæè¡çã«ã¯ãããããã¨ãã§ãã¾ã:
let fruits = []; // é
åãä½ãã¾ã
fruits[99999] = 5; // ãã® length ãããé常ã«å¤§ããªã¤ã³ããã¯ã¹ã§ããããã£ãå²ãå½ã¦ã¾ã
fruits.age = 25; // ä»»æã®ååã§ããããã£ã使ãã¾ã
é åã®ãã¼ã¹ã¯ãªãã¸ã§ã¯ããªã®ã§ãããã¯å¯è½ã§ããä»»æã®ããããã£ã追å ãããã¨ãã§ãã¾ãã
ããããã¨ã³ã¸ã³ã¯æã ãé åãé常ã®ãªãã¸ã§ã¯ãã¨ãã¦å¦çãã¦ãããã¨ãç¥ãã§ããããé ååºæã®æé©åã¯ããã®ãããªå ´åã«ã¯é©ãã¦ãããç¡å¹ã«ãªãã¾ãããã®å©ç¹ã¯æ¶ãã¾ãã
é åã®èª¤ã£ãä½¿ãæ¹:
arr.test = 5ã®ããã«éæ°å¤ããããã£ã追å ããã- ç©´ãä½ã:
arr[0]ã追å ããå¾ãarr[1000]ã追å ãã(ãã®éã¯ç¡ã)ã - éé ã§é
åãåãã:
arr[1000],arr[999]ãªã©ã
é åºä»ããã¼ã¿ ãå¦çããããã®ç¹å¥ãªæ§é ã¨ãã¦é
åãããã¨èãã¦ãã ãããé
åã¯ãã®ããã®ç¹å¥ãªã¡ã½ãããæä¾ãã¾ããé
åã¯é£ç¶ããé åºä»ããã¼ã¿ãå¦çãããããJavaScriptã¨ã³ã¸ã³å
é¨ã§æ³¨ææ·±ããã¥ã¼ãã³ã°ããã¦ãã¾ãããã®ããã«é
åã使ã£ã¦ãã ãããããã¦ãä»»æã®ãã¼ãå¿
è¦ãªã¨ãã¯ãé常ã®ãªãã¸ã§ã¯ã {} ãå¿
è¦ãªå¯è½æ§ãé«ãã§ãã
ããã©ã¼ãã³ã¹
ã¡ã½ãã push/pop ã¯å¦çãéããshift/unshift ã¯é
ãã§ãã
ãªããé åã®æåãããæå¾ãå¦çããæ¹ãéãã®ã§ããããï¼å®è¡ä¸èµ·ãã£ã¦ããäºãè¦ã¦ã¿ã¾ããã:
fruits.shift(); // å
é ãã1è¦ç´ ãåã
æ°å¤ 0 ã®è¦ç´ ãåå¾ãã¦åé¤ããã ãã§ã¯ä¸ååã§ããä»ã®è¦ç´ ãåæ§ã«çªå·ãã¤ãç´ãå¿
è¦ãããã¾ãã
shift æä½ã¯3ã¤ã®ãã¨ãããªããã°ãªãã¾ãã:
- ã¤ã³ããã¯ã¹
0ã®è¦ç´ ãåé¤ãã¾ãã - å
¨ã¦ã®è¦ç´ ãå·¦ã«ç§»åããã¾ããã¤ã³ããã¯ã¹
1ãã0ã2ãã1ã¨è¨ãããã«çªå·ãã¤ãç´ãã¾ãã lengthããããã£ãæ´æ°ãã¾ãã
é åå ã®è¦ç´ ãå¢ããã°å¢ããã»ã©ãç§»åã«å¿ è¦ãªæéã¨ã¡ã¢ãªå ã®æä½ãå¢ãã¾ãã
unshift ã§ãä¼¼ããããªãã¨ãèµ·ãã¾ã: é
åã®å
é ã«è¦ç´ ã追å ãã¾ãããæåã«åå¨ããè¦ç´ ãå³ã«ç§»åãããå¿
è¦ãããããããã®ã¤ã³ããã¯ã¹ãå¢ããã¾ãã
ããã¦ãpush/pop ã¯ã©ãã§ãããï¼ãããã¯ä½ãç§»åãããå¿
è¦ãããã¾ãããæ«å°¾ããè¦ç´ ãæ½åºãããããpop ã¡ã½ããã¯ã¤ã³ããã¯ã¹ãæ¶å»ããlength ãçãããã ãã§ãã
pop æä½ã®ã¢ã¯ã·ã§ã³:
fruits.pop(); // æ«å°¾ãã1è¦ç´ åã
ä»ã®è¦ç´ ã®ã¤ã³ããã¯ã¹ã¯å¤ãããªãã®ã§ãpop ã¡ã½ããã¯ä½ãç§»åãããå¿
è¦ã¯ããã¾ããããã®ããé常ã«é«éã§ãã
push ã¡ã½ãããåãã§ãã
ã«ã¼ã
é
åã¢ã¤ãã ã循ç°ãããæãå¤ãæ¹æ³ã®1ã¤ã¯ãã¤ã³ããã¯ã¹ä¸ã® for ã«ã¼ãã§ã:
let arr = ["Apple", "Orange", "Pear"];
for (let i = 0; i < arr.length; i++) {
alert( arr[i] );
}
ããããé
åã®ããã® for..of ã¨ããå¥ã®ã«ã¼ãã®å½¢å¼ãããã¾ã:
let fruits = ["Apple", "Orange", "Plum"];
// é
åè¦ç´ ã®å復å¦ç
for (let fruit of fruits) {
alert( fruit );
}
for..of ã¯ç¾å¨ã®è¦ç´ ã®çªå·ã¸ã¢ã¯ã»ã¹ãããã¨ã¯ã§ãããåã«å¤ã®ã¿ã§ããããããæ®ã©ã®ã±ã¼ã¹ã§ã¯ããã§ååã§ããã¾ããããçãæ§æã§ãã
æè¡çã«ã¯ãé
åã¯ãªãã¸ã§ã¯ããªã®ã§ for..in ãå©ç¨ãããã¨ãã§ãã¾ã:
let arr = ["Apple", "Orange", "Pear"];
for (let key in arr) {
alert( arr[key] ); // Apple, Orange, Pear
}
ããããå®éã«ããã¯è¯ããªãã¢ã¤ãã¢ã§ããããã«ã¯æ½å¨çãªåé¡ãããã¾ã:
-
ã«ã¼ã
for..inã¯æ°å¤ã®ãã®ã ãã§ãªãã å ¨ã¦ã®ãããã㣠ãç¹°ãè¿ãå¦çãã¾ãããã©ã¦ã¶ãä»ã®ç°å¢ã§ã¯ é åã®ããã«è¦ãã ãããã âé åã®ãããªâ ãªãã¸ã§ã¯ããããã¾ããã¤ã¾ãããããã¯
lengthã¨ã¤ã³ããã¯ã¹ããããã£ãæã£ã¦ãã¾ãããããããããã¯é常ã¯å¿ è¦ã®ãªãä»ã®éæ°å¤ããããã£ãã¡ã½ãããæã£ã¦ãã¾ããfor..inã«ã¼ãã¯ãããããªã¹ããã¾ãããªã®ã§ãããé åã®ãããªãªãã¸ã§ã¯ããå¦çããå¿ è¦ãããã¨ãããããã® âä½åãªâ ããããã£ãåé¡ã«ãªãå ´åãããã¾ãã -
for..inã«ã¼ãã¯é åã§ã¯ãªããæ±ç¨ãªãã¸ã§ã¯ãã«å¯¾ãã¦æé©åããã¦ããããã10ãã100åé ããªãã¾ãããã¡ããããã§ãã¨ã¦ãéãã§ããé«éåã¯ããã«ããã¯ã®å ´åã«ã®ã¿åé¡ãªãããã以å¤ã§ã¯ãã»ã©éè¦ã§ãªããã¨ãããã¾ãããããããã§ãç§ãã¡ã¯éãã«æ°ãã¤ããã¹ãã§ãã
ä¸è¬çã«ãé
åã«å¯¾ãã¦ã¯ for..in ã¯ä½¿ãã¹ãã§ã¯ããã¾ããã
âlengthâ ã«ã¤ãã¦
é
åã夿´ããã¨ããlength ããããã£ã¯èªåçã«æ´æ°ããã¾ããæ£ç¢ºã«ã¯ãããã¯é
åã®å®éã®å¤ã®æ°ã§ã¯ãªããæå¤§ã®æ°å¤ã¤ã³ããã¯ã¹ã«1ãå ãããã®ã§ãã
ä¾ãã°ã大ããªã¤ã³ããã¯ã¹ã®1ã¤ã®è¦ç´ ã¯å¤§ããªlengthãè¿ãã¾ã:
let fruits = [];
fruits[123] = "Apple";
alert( fruits.length ); // 124
é常ããã®ããã«é åã使ããªããã¨ã«æ³¨æãã¦ãã ããã
length ããããã£ã®å¥ã®è峿·±ãç¹ã¯ãæ¸ãè¾¼ã¿å¯è½ã¨è¨ãç¹ã§ãã
æåã§å¢ãããå ´åãé¢ç½ããã¨ã¯èµ·ãã¾ããããããããããæ¸ãããã¨ããé åã¯åãæ¨ã¦ããã¾ãããã®å¦çã¯ä¸å¯éã§ããããã¯ãã®ä¾ã§ã:
let arr = [1, 2, 3, 4, 5];
arr.length = 2; // 2ã¤ã®è¦ç´ ã«åãæ¨ã¦ã
alert( arr ); // [1, 2]
arr.length = 5; // length ãæ»ã
alert( arr[3] ); // undefined: å¤ã¯è¿ã£ã¦ãã¾ãã
ãªã®ã§ãé
åãã¯ãªã¢ããæãã·ã³ãã«ãªæ¹æ³ã¯ arr.length = 0; ã§ãã
new Array()
é åãä½ãããï¼ã¤ã®æ§æãããã¾ã:
let arr = new Array("Apple", "Pear", "etc");
è§æ¬å¼§ [] ãããçãæ¸ããã®ã§ãã»ã¨ãã©ä½¿ããã¾ãããã¾ããããªããã¼ãªç¹å¾´ãããã¾ãã
ããæ°å¤ã®ï¼ã¤ã®å¼æ°ã§ new Array ãå¼ã°ããã¨ããã¢ã¤ãã ã¯ããã¾ããããä¸ããããé·ããæã£ã é
åãä½ããã¾ãã
ãããã©ã®ããã«å¢ç©´ãæããè¦ã¦ã¿ã¾ããã:
let arr = new Array(2); // [2] ã®é
åã使ãã¾ããï¼
alert( arr[0] ); // undefined! è¦ç´ ãããã¾ãã.
alert( arr.length ); // length 㯠2 ã§ã
ãã®ãããªé©ããé¿ãããããä½ããã¦ããã®ãæ¬å½ã«åãã£ã¦ããªãéããé常ã¯è§æ¬å¼§ã使ãã¾ãã
夿¬¡å é å
é åã¯é åãæã¤ãã¨ãã§ãã¾ããæã ã¯è¡åãæ ¼ç´ããããã«ãããã夿¬¡å é åã¨ãã¦ä½¿ããã¨ãã§ãã¾ãã:
let matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
alert( matrix[1][1] ); // ä¸å¤®ã®è¦ç´
toString
é
åã¯ãè¦ç´ ã®ã«ã³ãåºåãã®ãªã¹ããè¿ãç¬èªã® toString ã¡ã½ããã®å®è£
ãæã£ã¦ã¾ãã
ä¾:
let arr = [1, 2, 3];
alert( arr ); // 1,2,3
alert( String(arr) === '1,2,3' ); // true
ãããã¯ãããã試ãã¦ã¿ã¾ããã:
alert( [] + 1 ); // "1"
alert( [1] + 1 ); // "11"
alert( [1,2] + 1 ); // "1,21"
é
å㯠Symbol.toPrimitive ãæã£ã¦ããããvalueOf ããªããtoString 夿ã®ã¿ãå®è£
ãã¦ãããããããã§ã¯ [] ã¯ç©ºæååã«ãªãã[1] 㯠"1" ã«ã[1,2] 㯠"1,2" ã«ãªãã¾ãã
äºé
æ¼ç®åãã©ã¹ "+" ãæååã«ä½ããå ããã¨ããåæ§ã«æååã«å¤æãã¾ãããªã®ã§ããã®æ¬¡ã®ã¹ãããã¯ãã®ããã«è¦ãã¾ã:
alert( "" + 1 ); // "1"
alert( "1" + 1 ); // "11"
alert( "1,2" + 1 ); // "1,21"
é åã == ã§æ¯è¼ããªãã§ãã ãã
JavaScript ã®é
åã¯ä»ã®ããã°ã©ãã³ã°è¨èªã¨ã¯ç°ãªãã== æ¼ç®åã§æ¯è¼ãã¹ãã§ã¯ããã¾ããã
ãã®æ¼ç®åã¯é åã«å¯¾ãã¦ç¹å¥ãªæ±ããããä»ã®ãªãã¸ã§ã¯ãã¨åæ§ã«åä½ãã¾ãã
ã«ã¼ã«ãæãåºãã¦ã¿ã¾ããã:
- ï¼ã¤ã®ãªãã¸ã§ã¯ãã¯ãåããªãã¸ã§ã¯ããåç
§ãã¦ããã¨ãã«ã ããç価
==ã§ãã ==ã®å¼æ°ã®ä¸æ¹ããªãã¸ã§ã¯ãã§ããã䏿¹ãããªããã£ãã®å ´åããªãã¸ã§ã¯ãã¯ãã£ãã¿ã¼ ãªãã¸ã§ã¯ãããããªããã£ãã¸ã®å¤æ ã§èª¬æããããã«ãããªããã£ãã«å¤æããã¾ãã- â¦äºãã«
==ã§ç価ã§ããnullã¨undefinedãé¤ãã¦ã¯ãä»ã«ã¯ä½ãããã¾ããã
å³å¯æ¯è¼ === ã¯ãå夿ãããªãããããã·ã³ãã«ã§ãã
ãªã®ã§ã== ã§é
åãæ¯è¼ããå ´åãå
¨ãåãé
åãåç
§ãã¦ããï¼ã¤ã®å¤æ°ãæ¯è¼ããªãéããæ±ºãã¦ç価ã«ã¯ãªãã¾ããã
ä¾:
alert( [] == [] ); // false
alert( [0] == [0] ); // false
ãããã®é
åã¯æè¡çã«ã¯ç°ãªããªãã¸ã§ã¯ãã§ãããããã£ã¦ãçããã¯ãªãã¾ããã== æ¼ç®åã¯è¦ç´ æ¯ã®æ¯è¼ã¯è¡ãã¾ããã
ããªããã£ãã¨ã®æ¯è¼ã§ã¯ã以ä¸ã®ããã«ãä¸è¦ããã¨å¥å¦ãªçµæãã§ããã¨ãããã¾ã:
alert( 0 == [] ); // true
alert('0' == [] ); // false
ããã§ã¯ã両æ¹ã®ã±ã¼ã¹ã§é
åãªãã¸ã§ã¯ãã¨ããªããã£ããæ¯è¼ãã¦ãã¾ãããªã®ã§ãé
å [] ã¯æ¯è¼ã®ããã«ããªããã£ãã«å¤æããã空æå '' ã«ãªãã¾ãã
次ã«ããã£ãã¿ã¼ å夿 ã§èª¬æããã¦ããããã«ãæ¯è¼ã®ããã»ã¹ãããªããã£ãã§ç¶è¡ããã¾ãã
// [] ã®å¤æå¾ã¯ '' ã§ã
alert( 0 == '' ); // true, '' ã¯æ°å¤ 0 ã«å¤æããããã
alert('0' == '' ); // false, å夿ã¯ããã¾ãããç°ãªãæååã§ã
ã§ã¯ãã©ããã£ã¦é åãæ¯è¼ãã¾ãããï¼
ç°¡åã§ã: == æ¼ç®åã使ãã¾ããã代ããã«ã«ã¼ããæ¬¡ã®ãã£ãã¿ã¼ã§èª¬æããã¤ãã¬ã¼ã·ã§ã³ã¡ã½ããã使ç¨ãã¦æ¯è¼ãã¾ãã
ãµããª
é åã¯ãªãã¸ã§ã¯ãã®ç¹å¥ãªç¨®é¡ã§ãããé åºä»ãããããã¼ã¿é ç®ãæ ¼ç´ããã®ã«é©ãã¦ãã¾ãã
-
宣è¨:
// è§æ¬å¼§ (é常) let arr = [item1, item2...]; // new Array (ä¾å¤çãã»ã¨ãã©ä½¿ããã¾ãã) let arr = new Array(item1, item2...);new Array(number)ã¸ã®å¼ã³åºãã¯ä¸ããããé·ãã®é åãä½ãã¾ãããè¦ç´ ãæã¡ã¾ããã -
lengthããããã£ã¯é åã®é·ãã§ããæ£ç¢ºã«ã¯ãã®æå¾ã®æ°å¤ã¤ã³ããã¯ã¹ã«1ãå ãããã®ã§ããããã¯é åã®ã¡ã½ããã«ãããèªåçã«èª¿æ´ããã¾ãã -
ããæåã§
lengthãçãããå ´åãé åã¯åãæ¨ã¦ããã¾ãã
以ä¸ã®æä½ã§é åã両端ãã¥ã¼(deque)ã¨ãã¦ä½¿ç¨ã§ãã¾ãã:
push(...items)ã¯itemsãæ«å°¾ã«è¿½å ãã¾ããpop()ã¯æ«å°¾ã®è¦ç´ ãåé¤ãããããè¿ãã¾ããshift()ã¯å é ã®è¦ç´ ãåé¤ãããããè¿ãã¾ããunshift(...items)ã¯ã¢ã¤ãã ãå é ã«è¿½å ãã¾ãã
é åã®è¦ç´ ãã«ã¼ãããããã«:
for (let i=0; i<arr.length; i++)â æãéãåä½ããå¤ããã©ã¦ã¶äºæã§ããfor (let item of arr)â ã¢ã¤ãã ã ãã®ããã®ãç¾ä»£ã®æ§æã§ããfor (let i in arr)â æ±ºãã¦ä½¿ãã¾ããã
é
åãæ¯è¼ããã«ã¯ã== æ¼ç®åï¼>, < ãªã©ãåæ§ï¼ã¯ä½¿ç¨ãã¾ããããããã¯é
åã«å¯¾ãã¦ç¹å¥ãªå¦çã¯ãã¾ãããåã«ãªãã¸ã§ã¯ãã¨ãã¦æ±ããããã¯é常æå¾
ãããã¨ã§ã¯ããã¾ããã
代ããã«ãé
åãè¦ç´ æ¯ã«æ¯è¼ããããã« for..of ã«ã¼ãã使ç¨ã§ãã¾ãã
ç§ãã¡ã¯ããã£ãã¿ã¼ é åã®ã¡ã½ãã ã§é åã«æ»ãã追å ãåé¤ãè¦ç´ ã®æ½åºãé åã®ã½ã¼ãã¨è¨ã£ãããå¤ãã®ã¡ã½ãããå¦ã³ã¾ãã
ã³ã¡ã³ã
<code>ã¿ã°ã使ã£ã¦ãã ãããè¤æ°è¡ã®å ´åã¯<pre>ãã10è¡ãè¶ ããå ´åã«ã¯ãµã³ãããã¯ã¹ã使ã£ã¦ãã ãã(plnkr, JSBin, codepenâ¦)ã