JavaScriptã®å€æ¬¡å é åãé åã®ã«ãŒãåŠçãåŠã¶
JavaScriptã®é åã®ã«ãŒãåŠçãšå€æ¬¡å é åã«ã€ããŠè§£èª¬ããŠãããŸããé åã§äœ¿çšã§ããã«ãŒãåŠçã®ä»£è¡šçãªã¡ãœããã玹ä»ãã倿¬¡å é åã¯èãæ¹ã宣èšã®æ¹æ³ã玹ä»ããŸãããµã³ãã«ã³ãŒãã§ãããããã解説ããŠãããŸãã®ã§ããã£ãããšåŠãã§ã¿ãŸããããJavaScriptã®é åãçè§£ããããšã§è±åå¿è ããŠã¿ãŸãããïŒ
ä»åã¯é åã§ãã«ãŒãåŠçã倿¬¡å é åã«ã€ããŠè§£èª¬ããŸããäžã€ãã€ãã¡ããšçè§£ããããšã§ããã°ã©ãã³ã°ã®å¹ ãåºããããã«ãªããŸãã®ã§ããã£ãããšåŠã¶ããã«ããŸãããã
é åã®åºæ¬ããããã
ããã°ã©ãã³ã°ã«ãããé åãšã¯è€æ°ã®èŠçŽ ã®ããŒã¿éåã§ãããã»ãŒãã¹ãŠã®ããã°ã©ã èšèªã§äœ¿çšãããŠããŸããJavaScriptãäŸå€ãªãé åããããŸãã®ã§ããããããšããŠäžèšãµã³ãã«ã³ãŒããèŠãŠã¿ãŸãããã
var array1 = new Array('ãµãã«ãŒ', 'ãã¹ã±', 'ããã¹');
var array2 = ['ãµãã«ãŒ', 'ãã¹ã±', 'ããã¹'];
console.log( array1 );
console.log( array2 );
åºåçµæã¯ã[ 'ãµãã«ãŒ', 'ãã¹ã±', 'ããã¹' ] ãã2è¡ç¶ããŠè¡šç€ºãããŸãã
é åã®å®£èšã®ä»æ¹ã¯äžèšã®ããã«newã䜿ã£ãæ¹æ³ãããã¯é åãªãã©ã«ïŒ[]ïŒã䜿ã£ãæ¹æ³ã®2ã€ãããŸãã
é åã¯è€æ°ã®èŠçŽ ãã²ãšãŸãšãã«ã§ããè€æ°ã®å€æ°ãæããªããŠãè¯ãããšããå©äŸ¿æ§ãé«ããšèšããŸãã
ä»åã®äŸã§ã¯3ã€ã®èŠçŽ ã§ãããã100åã200åã®èŠçŽ ãä¿æããå Žåã«ã¯é åã䜿ã£ãã»ããçãã³ãŒãã§æžãããšããããããšæããŸãã
倿¬¡å é åã®åŠçæ¹æ³
é åã«ã¯å€æ¬¡å é åããããç¹ã«2次å é åã¯åºã䜿ãããŠããŸãã宣èšã®ä»æ¹ã¯äžèšã®ããã«ãªããŸãã
var array = [
['ãµããŠ', 'ã¿ãã°ã'],
['ã€ãã', 'ãã€ããŠ']
];
ããšãã°ãåŠæ ¡ã®ã¯ã©ã¹ããšã®ååãä¿æãããšããŸãããã®å Žåã«2次å é åã§ã®æ å ±ãæ ŒçŽããããšã§äŸ¿å©ã«ç®¡çããããšãã§ããŸãã
è€æ°ã®ã¯ã©ã¹ããã£ãå Žåãäžã€ãã€é åã宣èšããŠããããããããŸãããç ©éã«ãªããããã§ããäžã€ã«ãŸãšããããšã§èŠããããã¢ã¯ã»ã¹ãããããã®ã§äœ¿ããããã«ãªããŸãããã
ã«ãŒãã䜿ã£ãé ååŠçãèŠãããïŒ
é åã®å®£èšãã§ããŸããããã«ãŒãã䜿ã£ãé ååŠçãèŠããŸããããäž»ã«forEachãfilterãmapãreduceããããŸãã®ã§ãããããã®ç¹åŸŽãçè§£ããŠå®è¡ã§ããããã«ããŸãããã
forEachã䜿ã£ãç¹°ãè¿ãåŠç
foreachã¯é åã®ç¹°ãè¿ãåŠçãšããŠããã䜿çšãããŠããŸããäœ¿ãæ¹ãšããŠã¯äžèšã«ãªãã®ã§èŠãŠã¿ãŸãããã
var array = [
['ãµããŠ', 'ã¿ãã°ã'],
['ã€ãã', 'ãã€ããŠ']
];
array.forEach(function( value ) {
console.log( value );
});
è¡šç€ºçµæã¯ã[ 'ãµããŠ', 'ã¿ãã°ã' ] [ 'ã€ãã', 'ãã€ããŠ' ]ããšãªããŸãã
ãµã³ãã«ã§ã¯2次å é åãäŸã«ããŸãããã1次å é åã§ãåæ§ã®äœ¿ãæ¹ã§ã§ããŸãã
forEachã¯é åå ã®ããŒã¿ãé çªã«èŠãŠãããæå®åŠçãç¹°ãè¿ããŠãããŸããé åã®ã«ãŒãåŠçã®åºæ¬ã§ãããå€ã䜿ãããŸãã®ã§èŠããŠãããŸãããã
filterã䜿ã£ãŠä»»æã®èŠçŽ ãæœåº
filterã¯é åã®èŠçŽ ãæœåºããŠãããŸãããã¡ãããŸãã¯ãµã³ãã«ã³ãŒããèŠãŠã¿ãŸãããã
var numbers = [8,6,2,1,4,9,6,7,5];
var result = numbers.filter( function( value ) {
return value > 4;
})
console.log( result );
è¡šç€ºçµæã¯ã[ 8, 6, 9, 6, 7, 5 ]ããšãªããŸãã
ãã®äŸã§ã¯4以äžã®æ°åã®ã¿ãæœåºããããã«ããŸãããã³ãŒã«ããã¯é¢æ°ã®åŒæ°valueãçŸåšèŠãŠããèŠçŽ ãšãªããŸããäžèšã³ãŒãã§ã¯æåã« 8 ãèŠãŠã次㫠6, 9 ãšç¶ããŸãã
ã³ãŒã«ããã¯å ã§trueãšè©äŸ¡ããããã®ã察象ãšãªããä»åã®äŸã§ã¯4ããäžã®æ°å€ã察象ã§ããã³ãŒã«ããã¯å ã§ã¯è¿ãå€ãæå®ããããšãæ°ããé åãçæããäºããã€ã³ãã§ãã
ããŒã¿æœåºã¯æ€çŽ¢ãäžèŽãªã©ã®åŠçã§äœ¿ãããæ¥åã§ãå€ãæ±ããããæè¡ã§ãã®ã§ãèŠããŠããããã«ããŸãããã
mapã䜿ã£ãŠæ°ããé åãäœæ
forEachãšäŒŒãŠé åã®ç¹°ãè¿ãã«ãŒãããŸããå ·äœçãªéãããããŸããããã¯æ°ããé åãçæããŠãããããšã§ãã
ãã¡ãããµã³ãã«ã³ãŒããèŠãŠã¿ãŸãããã
var numbers = [1,2,3,4,5,6,7,8,9];
var result = numbers.map(function( value ) {
return value * value;
});
console.log( result );
å®è¡çµæã¯ã[ 1, 4, 9, 16, 25, 36, 49, 64, 81 ]ããšãªããŸãã
forEachã¯ã³ãŒã«ããã¯é¢æ°å ã§è¿ãå€ãèšå®ããå¿ èŠããããŸããããmapã¯è¿ãå€ãæå®ããªããã°ãªããŸãããäžèšäŸã§ã¯è¿ãå€ã®çµæãæ°ããé åã«çæããŠããŸãã
reduceã§é ã ã«ã«ãŒãåŠçãã
reduceã¯é åå ã®èŠçŽ ãšèŠçŽ ãããåãããããã²ãšãŸãšãã«ããããããå Žåãªã©ã«å©çšãããŸãã
ããšãã°é åå ã®æ°å€ããã¹ãŠè¶³ããŠåãæ±ãããå Žåã¯äžèšã®ããã«æžããšããã§ãããã
var numbers = [1,2,3,4,5,6,7,8,9];
var total = numbers.reduce(function(previousValue, currentValue, index, array) {
return previousValue + currentValue;
});
console.log(total);
è¡šç€ºçµæã¯ 45 ãšãªããŸãã
ã³ãŒã«ããã¯é¢æ°ã®åŒæ°ãå€ãé£ãããããããŸããããpreviousValueãä»ãŸã§ã®çµæãcurrentValueãçŸåšèŠãŠããèŠçŽ ãšãªããŸãã
indexã¯çŸåšã®ã©ãã®é åãæããŠãããã§ãããarrayã¯reduceããŠããããŒã¿èªèº«ãæããŸããindexãšarrayã¯çç¥ããŠãåé¡ãããŸããã
ãŸããreduceã«ã¯initialValueãšããåŒæ°ãååšããæå®ããå ŽåpreviousValueã®å€ãinitialValueãšåãå€ã«ãªããŸãããµã³ãã«ã³ãŒãã§ã¯ã³ãŒã«ããã¯åŸã®10ãinitialValueã§ãã
var numbers = [1,2,3,4,5,6,7,8,9];
var total = numbers.reduce(function(previousValue, currentValue, index, array) {
return previousValue + currentValue;
}, 10);
console.log(total);
äžèšãµã³ãã«ã³ãŒãã®å Žå㯠55 ãè¡šç€ºçµæãšãªããŸããpreviousValueã®åæå€ã10ã§ããã1ãã9ãé ã ã«è¶³ããŠã®çµæã§ãã
åæå€ãèšå®ãããå Žåã¯initialValueãå©çšããŸãããã
ã«ãŒãã倿¬¡å é åã®åŠçãèŠããŠå¹çããããã°ã©ãã³ã°ãïŒ
é åãèŠããããšã§ããã°ã©ãã³ã°ã®å¹ ãåºãã£ãŠããŸããç¹ã«é åã®ã«ãŒãã倿¬¡å é åãçè§£ããã¹ã¿ãŒããããšã§å¹çã®è¯ãããã°ã©ã ãæžãããšãå¯èœã§ããé åã«é¢ããããšãçè§£ã§ãå§ããããè±åå¿è ãšèšã£ãŠããããããããŸããã
JavaScriptã®ã«ãŒãåŠçã¯äŸ¿å©ã§ãããä»å玹ä»ãã forEachãfilterãmapãreduce ã®éããç¹åŸŽããã£ãããšåŠã¶ããã«ããŸãããïŒ











