é åã¯ãªããžã§ã¯ãã®äžçš®ã§ãããããŒã¿åãšããŠã¯ãªããžã§ã¯ãã§ãã
é åãçæããŠåæåããæ¹æ³ã3ã€ç޹ä»ããŸãããªããµã³ãã«ã³ãŒãã¯ããã¹ãŠåäžã®çµæãšãªããŸãã
| æ¹æ³ | ãµã³ãã«ã³ãŒã |
|---|---|
| ã³ã³ã¹ãã©ã¯ã¿ |
var a = new Array(); a[ 0 ] = 1.0; a[ 1 ] = 'text'; |
| åŒæ°ä»ãã³ã³ã¹ãã©ã¯ã¿ |
var a = new Array( 1.0, 'text' ); |
var a = new Array( 2 ); a[ 0 ] = 1.0; a[ 1 ] = 'text'; |
|
| é åãªãã©ã« |
var a = []; a[ 0 ] = 1.0; a[ 1 ] = 'text'; |
var a = [ 1.0, 'text' ]; |
Array()ã³ã³ã¹ãã©ã¯ã¿é¢æ°ã䜿çšããŸããé åã®çæåŸã«æªå®çŸ©ã®èŠçŽ ã«ä»£å ¥ããããšã§ãé åã®èŠçŽ ãçæããåæåãããŸãã
Array()ã®åŒæ°ã«é åèŠçŽ ãäžããããšã§ãé åã®çææã«åæåã§ããŸãã
ãªãåŒæ°ã«æ°å€ã1ã€ã ãæå®ããå Žåã«ã¯ããããé åã®é·ããšã¿ãªããããã®åæ°ã®æªå®çŸ©ã®èŠçŽ ãæã£ãé åãçæãããŸãã
å šäœãè§ãã£ã ( [ ] ) ã§å²ã¿ãå€ãã«ã³ãã§åºåã£ãŠèšè¿°ããŸãã
[ value, value, ... ]
æåŸã®èŠçŽ ã®åŸã«ã«ã³ã (,) ãä»ãããšãIE9ããåã§ã¯èŠçŽ ã®æ°ã1ã€å¢å ããŸããããã¯ä»ã®ç°å¢ãšã¯ç°ãªãçµæãšãªããããã¯ãã¹ãã©ãŠã¶ãšããããã«ã¯æåŸã«ã«ã³ããä»ããã¹ãã§ã¯ãããŸãããåæ§ã®åé¡ã¯ãªããžã§ã¯ããªãã©ã«ã«ããããŸããTrailing commas in JavaScript - Stack Overflow
ããšãã°é åaãã
var a = [ 1,2,3, ];
ã®ããã«çæããããšãããšã
alert( a.length ); alert( a[ a.length - 1 ] );
ãšãããšãã®åãã©ãŠã¶ã®åºåã¯
| ãã©ãŠã¶ | a.length |
a[ a.length - 1 ] |
|---|---|---|
| IE8 | 4 | undefined |
| IE9 | 3 | 3 |
| Firefox |
ã®ããã«ãç°ãªãçµæãšãªããŸãã
æªå®çŸ©ã®èŠçŽ ã«ä»£å ¥ããããšã§ãèŠçŽ ã远å ã§ããŸãã
a[ 10 ] = 1;
é åã®æåãæåŸã«èŠçŽ ã远å ãããªãã°ã次é ã®unshift()ãpush()ã䜿çšããŸããäžæ¹ã§ç¹å®ã®äœçœ®ãžæ¿å ¥ãããªãã°ãsplice()ãçšããŸãã
ç°¡åã«ã¯ãåé€ã¯deleteæŒç®åã§è¡ããŸãã
var a = [ 1, 2, 3, 4, 5 ]; delete a[ 2 ]; // a [1, 2, undefined, 4, 5] alert( 2 in a ); // false alert( a.length ); // 5
ããããããšã§é åãããã®èŠçŽ ã¯é€ãããŸãããé åã®å€§ããã¯å€ãããŸãããäžæ¹ã§ãåé€ããèŠçŽ ã«undefinedãä»£å ¥ããæ¹æ³ããããŸããã
var a = [ 1, 2, 3, 4, 5 ]; a[ 2 ] = undefined; // a [1, 2, undefined, 4, 5] alert( 2 in a ); // true alert( a.length ); // 5
ãã®æ¹æ³ã§ã¯èŠçŽ ã¯åé€ããããé åã®å€§ãããå€ãããŸããããã£ãŠç¢ºå®ã«èŠçŽ ãåé€ããã«ã¯ãåŸè¿°ããsplice()ãçšããŸãã
var a = [ 1, 2, 3, 4, 5 ];
a.splice( 2, 1 );
// a [1, 2, 4, 5]
ãã¹ãŠã®èŠçŽ ãåé€ãããªãã°ãæ°ãã«äœæãã空ã®é åãä»£å ¥ããã®ãç°¡åã§ãã
var a = [ 1, 2, 3, 4, 5 ];
a = [];
// a []
ãŸãã¯length = 0ãšããããšã§ãããã¹ãŠã®èŠçŽ ãåé€ã§ããŸãã
push()ãšpop()ã§ãå å ¥ãåŸåºã (FILO / ãŸãã¯åŸå ¥ãå åºã (LIFO)) ã®æ©èœãå®çŸã§ããŸãã
| äœçœ® | æäœ | ã¡ãœãã |
|---|---|---|
| å é | 远å | unshift |
| åé€ | shift | |
| æåŸ | 远å | push |
| åé€ | pop |
array.push( value, ... )Array.push - JavaScript | MDN
push()ã§ã¯è€æ°ã®åŒæ°ãäžããããšã§ã倿°ã®é ç®ãäžåºŠã«è¿œå ã§ããŸãã
var a = [ 1, 2 ]; a.push( 3 ); // [ 1, 2, 3 ] a.push( 10, 'a' ); // [ 1, 2, 3, 10, 'a' ]
åŒæ°ã«é åãå«ãŸãããšãã«ã¯ããã®é åã®ãŸãŸè¿œå ãããŸãããããèŠçŽ ã«å±éããŠè¿œå ããã«ã¯concat()ã䜿çšããŸãã
var a = [ 1, 2 ];
var b = [ 3, 4 ];
a.push( b ); // [1, 2, [3, 4]]
push()ãšã¯éã«ãèŠçŽ ãåãé€ãã®ãpop()ã§ãã
array.pop()Array.prototype.pop - JavaScript | MDN
pop()ã§ã¯æåŸã®1ã€ã®èŠçŽ ãè¿ããããã®èŠçŽ ãé åããåé€ãããŸããæåŸã®èŠçŽ ãŸã§åé€ãã1ã€ãèŠçŽ ãæããªããªããšãundefinedãè¿ãããŸãã
var a = [ 1, 2, 3 ]; a.pop(); // 3ãè¿ãããaã¯[ 1, 2 ]ãšãªã a.pop(); // 2ãè¿ãããaã¯[ 1 ]ãšãªã a.pop(); // 1ãè¿ãããaã¯[]ãšãªã a.pop(); // undefinedãè¿ãããaã¯[]ã®ãŸãŸ
array.splice( start, deleteCount, value, ... )Array.splice - JavaScript | MDN
æ¿å ¥ãåé€ãããŠçœ®æãè¡ããŸãã
splice()ãšslice()ãæ··åããªããslice()ã¯é åã®äžéšãåãåãã¡ãœããã§ãã
startã«è² æ°ãæå®ããå Žåã«ã¯ãé åã®çµç«¯ããæ°ããèŠçŽ ãšãªããŸããããšãã°-1ãšããã°æ«å°Ÿã®èŠçŽ ã§ãããããã¯array.length+startã®äœçœ®ãšçãããªããŸãã
ãã®é¢æ°ã¯åé€ããèŠçŽ ãå«ãé åãè¿ããŸããåé€ããã®ã1ã€ã®èŠçŽ ã ãã§ãã£ãŠãããã®èŠçŽ ãè¿ãã®ã§ã¯ãªãããã®èŠçŽ ãå«ãé åãè¿ããŸãã
var a = [ 1, 2, 3, 4, 5 ]ãšãããšãã®å®è¡çµæããäžè¡šã«ãŸãšããŸãã
| ã³ãŒã | å®è¡çµæ |
|---|---|
a.splice( 3 ); |
[4,5]ãè¿ããaã¯[1,2,3]ãšãªã |
a.splice( -3 ); |
[3,4,5]ãè¿ããaã¯[1,2]ãšãªã |
a.splice( 1, 3 ); |
[2,3,4]ãè¿ããaã¯[1,5]ãšãªã |
a.splice( 1, 1 ); |
[2]ãè¿ããaã¯[1,3,4,5]ãšãªã |
a.splice( 1, 10 ); |
[2,3,4,5]ãè¿ããaã¯[1]ãšãªã |
a.splice( 2, 2, 10 ); |
[3,4]ãè¿ããaã¯[1,2,10,5]ãšãªã |
a.splice( 2, 0, 10 ); |
[]ãè¿ããaã¯[1,2,10,3,4,5]ãšãªã |
第1åŒæ°ã ãæå®ããŠèŠçŽ ãåé€ããåŠçã¯ãlengthããããã£ã§åãè©°ããæ¹æ³ã§ä»£çšã§ããŸãã
var a = [ 1, 2, 3, 4, 5 ];
a.length = 3; // [ 1, 2, 3 ]
ã€ã³ããã¯ã¹ããã©ã±ããè¡šèšæ³ã§æå®ããããšã§ãé åã®èŠçŽ ãžã¢ã¯ã»ã¹ã§ããŸãã
a[ 0 ];
èå¥åã®å é ã«æ°åãæå®ããããšã¯èªããããªããããããã
a.0;
ã®ããã«ã¯èšè¿°ã§ããŸããã
ã€ã³ããã¯ã¹ã¯å éšçã«æååãšããŠåŠçãããããããã®èšè¿°æ¹æ³ã«ãã£ãŠã¯äºæãã¬çµæãè¿ãããšããããŸãã
var a = [ 1, 2, 3 ]; alert( a[ 1 ] ); // 2 alert( a[ '1' ] ); // 2 alert( a[ 01 ] ); // 2 alert( a[ '01' ] ); // undefined
ãã®ããšã¯ããããã®ã€ã³ããã¯ã¹ã®èšè¿°ãæååã«å€æããŠã¿ãããšã§ããã®éãã確ãããããŸãã
alert( ( 1 ).toString() ); // '1' alert( ( '1' ).toString() ); // '1' alert( ( 01 ).toString() ); // '1' alert( ( '01' ).toString() ); // '01'
åæåããŠããªãèŠçŽ ãç¯å²å€ã®èŠçŽ ããèªã¿èŸŒããšãundefinedãè¿ãããŸãã
var a = new Array( 1 ); alert( a[ 0 ] ); // undefined alert( a[ 1 ] ); // undefined
ãŸãundefinedæŒç®åãªã©ã§åé€ãããèŠçŽ ããundefinedãè¿ããŸãã
var a = [ 1, 2, 3 ]; alert( a[ 1 ] ); // 2 delete a[ 1 ]; alert( a[ 1 ] ); // undefined
var index = array.indexOf( searchElement[, fromIndex ] );Array.prototype.indexOf - JavaScript | MDN
ãã®ã¡ãœããã§ã¯å倿Œç®åã«ãã£ãŠsearchElementãšçããããšãå€å®ããäžèŽããæåã®èŠçŽ ã®ã€ã³ããã¯ã¹ãè¿ããŸããäžèŽããªãã£ãå Žåã«ã¯ã-1ãè¿ãããŸãã
var a = [ 1, 'a', 'A' ]; a.indexOf( 'A' ); // 2 a.indexOf( 'B' ); // -1
ãã®indexOf()ã¯ãIE9以éã§ãµããŒããããŸããBrowser compatibility - Array.prototype.indexOf() - JavaScript | MDN
æå®ã€ã³ããã¯ã¹ã®èŠçŽ ãååšãããã©ããã¯ãinæŒç®åã§ç¢ºèªã§ããŸãã
æå®å€ã®èŠçŽ ãååšãããã©ããã¯ãåé ã®indexOf()ã§ç¢ºèªããŸãã
alert( 2 in [10,20,30] ); // true alert( 2 in [10,20] ); // false
ãŸãã¯ãã®èŠçŽ ãåç §ããundefinedãè¿ããã©ããã§å€å®ããæ¹æ³ããããŸãã
var a = [ 'a', 'b', undefined, 'd' ]; alert( a[1] ); // 'b' alert( a[2] ); // undefined alert( a[4] ); // undefined alert( typeof a[1] === 'undefined' ); // false alert( typeof a[2] === 'undefined' ); // true alert( typeof a[4] === 'undefined' ); // true
ãã ããã®ããã«ããã®èŠçŽ ãå€ãšããŠundefinedãæã€ãšãã¯æ£ããå€å®ã§ããŸããã
颿°ãå©çšããŠãæ¡ä»¶ã«äžèŽããèŠçŽ ãååšããã確èªã§ããŸãã
var someElementPassed = array.some( callback[, thisObject] );Array.some - JavaScript | MDN
arrayã®1ã€ãã€ã®èŠçŽ ãåŒæ°ãšããŠãcallbackãããè¿ãåŒã°ããŸãããã®ãšãcallbackãtrueãè¿ããæç¹ã§ãsome()ã¯trueãè¿ããŸãããã¹ãŠã®èŠçŽ ã«å¯ŸããŠcallbackãfalseãè¿ããšãsome()ã¯falseãè¿ããŸãã
Array.filter()ã¯æ¡ä»¶ã«äžèŽããèŠçŽ ãæ ŒçŽãããé åãè¿ãããããã®é åã®lengthããæ¡ä»¶ã«äžèŽããèŠçŽ ã®æ°ãåŸãããŸãã
é åã¯ãªããžã§ã¯ãã§ãããããä»£å ¥æŒç®åã§ã¯åç §ã®ã³ããŒãšãªããŸãã
var a = [1, 2, 3]; var b = a; // ä»£å ¥æŒç®åã«ããã³ã㌠// a [1, 2, 3] // b [1, 2, 3] a[0]= 5; // a [5, 2, 3] // b [5, 2, 3] é åaãžã®å€æŽããé åbã«ãåæ ãããŠãã
åç §ã§ã¯ãªãé åã®èŠçŽ ãã³ããŒããã«ã¯ãæ»ãå€ã§æ°ããé åãè¿ãã¡ãœããã䜿çšããã®ãç°¡åã§ããããã¯2ã€ãããŸãã
ããããæ¬¡ã®ããã«äœ¿çšããŸãã
var newArray = array.slice( 0 );
var newArray = array.concat();
ãããã¯ã·ã£ããŒã³ããŒã§ããããã倿¬¡å é åã§ã¯æåŸ éãã«ã³ããŒã§ããŸããã
ãããã®æ¹æ³ã§ãåãçµæãåŸãããŸããããã®åŠçé床ã«ã¯éãããããŸããcopy array slice-vs-concat · jsPerfã«ããçµæãä¿¡ãããªãã°ãslice(0)ã®æ¹ãé«éãªããã§ãã
var a = [ [ 1, 2 ], [ 3, 4 ] ]; var b = a.slice( 0 ); // a [[1, 2], [3, 4]] // b [[1, 2], [3, 4]] a[0][0]= 5; // a [[5, 2], [3, 4]] // b [[5, 2], [3, 4]] é åaãžã®å€æŽããé åbã«ãåæ ãããŠãã
Object.prototype.clone = function()
{
var newObj = ( this instanceof Array )? [] : {};
for( i in this )
{
if( i == 'clone' ) continue;
if( this[ i ] && typeof this[ i ] == 'object' )
{
newObj[ i ] = this[ i ].clone();
}
else
{
newObj[ i ] = this[ i ]
}
}
return newObj;
}
JavaScriptã¯å€æ¬¡å é åããµããŒãããŠããªããããé åã®èŠçŽ ã«é åãæãããããšã§ãããã«è¿ãåäœãå®çŸããŸãã
var a = new Array(); a[ 0 ] = new Array( 1, 2 ); a[ 1 ] = new Array( 3, 4 );
ããã¯é åãªãã©ã«ãçšããã°ã
var a = [ [ 1, 2 ], [ 3, 4 ] ];
ã®ããã«èšè¿°ããŠãåãã§ãã
倿¬¡å é åã®èŠçŽ ãžã®ã¢ã¯ã»ã¹ã¯ã[]æŒç®åãããè¿ãããšã§è¡ããŸããããšãã°å ã®é åã«ã
a[ 1 ][ 0 ];
ãšã¢ã¯ã»ã¹ããã°ã3ãè¿ãããŸãã
JavaScriptã§ã¯é åã®ã€ã³ããã¯ã¹ã«æååã䜿çšã§ããŸããããã£ãŠé åãšããŠé£æ³é åã¯ãµããŒããããŸãããããªããžã§ã¯ãã®ããããã£ã§ããã代çšã§ããŸãã
ä»®ã«ã€ã³ããã¯ã¹ã«æååã䜿çšããå Žåãããã¯Arrayãªããžã§ã¯ãã®ããããã£ãšããŠèªèãããé åã®èŠçŽ ãšã¯ãªããŸããã
以äžã®ã³ãŒããå®è¡ããŠã¿ãŸãã
var array = new Array(); array[ 0 ] = 10; array[ 1 ] = 20; array[ 'a' ] = 30; array[ 'b' ] = 40; array[ 2 ] = 50;
ãããã¬ã§ç¢ºèªãããšã'a'ãš'b'ã¯é åãšããŠèªèãããŠããªãããšãããããŸãããŸãé åã®ãµã€ãº (array.length) ã¯3ãšãªããŸãã

ãªããžã§ã¯ãã®ããããã£åãçµ±äžããŠããããšã§ããããããŒãšããŠArray.sort()ã¡ãœããã§ãœãŒãã§ããŸãã
var array = new Array();
array.push( { key: 'alpha', value: 10 } );
array.push( { key: 'beta', value: 20 } );
array.push( { key: 'gamma', value: 5 } );
array.sort( function( a, b ) { return a.value - b.value; } );
for...inã®æ§æã§ãPHPãªã©ã®foreachã«è¿ãåŠçãå®çŸã§ããŸãã
for...ofããµããŒãããããªãã°ããããçšããŸãã
倿° (äžèšã®äŸã§ã¯i) ã«æ ŒçŽãããã®ã¯é åã®èŠçŽ ã§ã¯ãªããé åã®ã€ã³ããã¯ã¹ãããã¯é£æ³é åã®ããŒã«ãªããŸãããªãé åã®èŠçŽ ãåŠçããé åºã¯èŠå®ãããŠããªããããã€ã³ããã¯ã¹é ã«åŠçããããšã¯éããŸããã
var array = new Array( 1, 2 );
array.foo = 'foo';
array[ 5 ] = 5;
array.push( 'a', 'b' );
for( var x in array )
{
document.write( array[ x ] + ',' );
}
// 1,2,5,a,b,foo, ãšåºå
ãã®ããã«æ³šæç¹ãå€ããããfor...inæã¯ãªããžã§ã¯ãã®ããããã£ããã¹ãŠåŠçããå Žåã«ã ãéå®ããéåžžã¯
// arrayã¯äžã®å®çŸ©ã«åã for( var i = 0; i < array.length; i++ ) { document.write( array[ i ] + ',' ); } // 1,2,undefined,undefined,undefined,5,a,b, ãšåºå
ã®ããã«foræãçšããããã«ããŸãã
JavaScript 1.6以éã«å¯Ÿå¿ããç°å¢ãªãã°ãforEach()ã¡ãœãããå©çšã§ããŸãã
array.forEach( callback[, thisArg ] )Array.prototype.forEach() - JavaScript | MDN
ãã®ã¡ãœããã§ã¯arrayã®èŠçŽ ã1ã€ãã€ãcallbackã®é¢æ°ãžæž¡ãããŸãã
é åå šäœãäžŠã¹æ¿ããã®ã«ãsort()ãšreverse()ãšãã2ã€ã®çµã¿èŸŒã¿é¢æ°ãçšæãããŠããŸãã
array.sort()sort | MDN
æ¢å®ã§ã¯ãèŠçŽ ã¯æååãšããŠã¢ã«ãã¡ãããé ã«äžŠã¹æ¿ããããŸããèŠçŽ ãæ°å€ã§ãã£ãŠãæååã«å€æãããŠæ¯èŒãããããããã®ç¹ã«ã¯çæããå¿
èŠããããŸãããŸãé çªã¯ãå³å¯ã«ã¯æåãšã³ã³ãŒãã£ã³ã°ã«ãã£ãŠæ±ºãŸãé ãšãªããããããšãã°['C','b','a']ãäžŠã¹æ¿ãããš['C','a','b']ãšãªããŸãã
var array = [ 'C', 'b', 'B', 'b', 'a' ];
array.sort(); // ['B','C','a','b','b']
ãã£ãŠå€§æå/å°æåã®åºå¥ãªãã¢ã«ãã¡ãããé ãšããã«ã¯ãåŸè¿°ã®æ¯èŒé¢æ°ãçšããäžã§ãString.toUpperCase()ã§å€§æåã«çµ±äžããŠããæ¯èŒããŸãã
array.sort( function( a, b ) // ['a','b','B','b','C']
{ return ( a.toUpperCase() > b.toUpperCase() )? 1 : -1; } );
ã¡ãªã¿ã«æ¯èŒé¢æ°ãæå®ããªãå Žåã®æ¯èŒæ¹æ³ã¯ã次ã®ãããªé¢æ°ãæå®ããå Žåãšçããã§ãã
array.sort( function( a, b ) { return ( a > b )? 1 : -1; } );
array.sort( orderfunc )
æ¯èŒé¢æ°orderfuncã®é ã«äžŠã¹æ¿ããŸãã
æ¯èŒé¢æ°ã«ã¯åŒæ°ã2ã€æãããŸãããã®åŒæ°ã«ã¯æ¯èŒå¯Ÿè±¡ãšãªãé åã®èŠçŽ ãæž¡ãããŸãããæž¡ãããé çªã¯ãã©ãŠã¶ã«ãã£ãŠç°ãªããŸãããã®åé¡ã¯1ã€ã®é åã«sort()ãããè¿ããšãã«ãç¹ã«é¡åšåããŸãã
| ãã©ãŠã¶ | 第1åŒæ° | 第2åŒæ° |
|---|---|---|
| Internet Explorer | array[ 0 ] | array[ 1 ] |
| Firefox | ||
| Chrome | array[ 0 ] | array[ array.length / 2 ] |
æ¯èŒé¢æ°ã¯ãæ»ãå€ãšããŠæ°å€ãè¿ãå¿ èŠããããŸãã
| æ»ãå€ | äžŠã¹æ¿ãæ¹æ³ |
|---|---|
| 0ããå°ããªå€ | 第1åŒæ°ã第2åŒæ°ã®åã«ãªãããã«äžŠã¹æ¿ã |
| 0 | äžŠã¹æ¿ããªã |
| 0ãã倧ããªå€ | 第1åŒæ°ã第2åŒæ°ã®åŸã«ãªãããã«äžŠã¹æ¿ã |
ãªããé åã®æªå®çŸ©ã®èŠçŽ ã¯å¿ ãé åã®æåŸã«ãªãããã«äžŠã¹æ¿ããããæ¯èŒé¢æ°ã«æž¡ãããããšã¯ãããŸããã
ããšãã°é åã®èŠçŽ ãæ°å€ã®å Žåãæ°å€é ã«äžŠã¹æ¿ãããªãã°ã
array.sort( function( a, b ) { return a - b; } );
ã®ããã«ããŸãã
| æ¯èŒé¢æ° | äžŠã¹æ¿ãæ¹å |
|---|---|
function( a, b ) { return a - b; } |
æé |
function( a, b ) { return b - a; } |
éé |
é åã®èŠçŽ ããªããžã§ã¯ãã§ããã®ãªããžã§ã¯ããdataãšããããããã£åã®æ°å€ãæã€ãšããŸãããã®å Žåãããæ°å€é ã«äžŠã¹æ¿ãããªãã°ã
array.sort( function( a, b ) { return a.data - b.data; } );
ã®ããã«ããŸãã
array.reverse()
èŠçŽ ãéé ã«äžŠã¹æ¿ããŸãã
1ã€ã®èŠçŽ ã®é çªãå ¥ãæ¿ããã ããªãã°ã次ã®ããã«splice()ã§å¯èœã§ãã
var a = [ 0, 1, 2, 3, 4 ]; Sort(a, 3, 1); // 0, 3, 1, 2, 4 (3çªç®ã®èŠçŽ ã1çªç®ãžç§»å) Sort(a, 1, 3); // 0, 2, 3, 1, 4 (1çªç®ã®èŠçŽ ã3çªç®ãžç§»å) Sort(a, 2, 2); // 0, 1, 2, 3, 4 (2çªç®ã®èŠçŽ ã2çªç®ãžç§»å) function Sort(a, target, dist) { var array = a.slice( 0 ); // é åãã³ã㌠// targetçªç®ã®èŠçŽ ããdistã®äœçœ®ãžç§»å array.splice( dist, 0, array.splice( target, 1 )[ 0 ]); console.log( array ); }
array.concat( [value1[, value2[, ...[, valueN]]]] )Array.prototype.concat - JavaScript | MDN
ãã®ã¡ãœããã§ã¯arrayã¯å€æŽããããarrayã«valueãé£çµããæ°ããé åãè¿ãããŸããvalueãæå®ããªããšãã«ã¯ãarrayã®ã³ããŒããã®ãŸãŸè¿ãããŸãã
var a = [ 1, 2 ]; var b = [ 3, 4 ]; var c = a.concat( b ); // aã¯[1,2]ã®ãŸãŸ // cã¯[1,2,3,4]
åŒæ°ã®é åã¯èŠçŽ ã«å±éãããŸããããã®èŠçŽ ã«é åãå«ãŸãããšãã«ã¯ããã®é åãŸã§ã¯å±éãããŸããã
a.concat( 3,[4,5],6 ); // [1,2,3,4,5,6]ãè¿ããã a.concat( [3,4,[5,6]] ); // [1,2,3,4,[5,6]]
ã¡ãªã¿ã«push()ã§ã¯ã
var a = [ 1, 2 ]; var b = [ 3, 4 ]; var e = a.push( b ); // aã[1,2,[3,4]]ãšãªã // eã¯3 (aã®èŠçŽ æ°)
ã®ããã«ãé åã¯ãã®ãŸãŸé£çµãããŸãã
â«æååãé£çµãããªãã°ãString.concat()
çµã¿èŸŒã¿ã®ã¡ãœãããšããŠã¯æäŸãããªããããèªåã§åŠçããå¿ èŠããããŸãã
Array.filter()ã¯ããã®é åã®èŠçŽ ãåŒæ°ãšããŠãã¹ã颿°ãåŒã³åºããŸãããããŠãã®é¢æ°ãtrueãè¿ãèŠçŽ ã§ãæ°ããé åãçæããŸãããã®ãšããã¹ã颿°ã§ã¯ãArray.indexOf()ã®åŒæ°ã§æž¡ãããèŠçŽ ã®ã€ã³ããã¯ã¹ãæ¢çŽ¢ãããããåŒæ°ã®èŠçŽ ã®ã€ã³ããã¯ã¹ãšåèŽãããå€å®ããŸãã
var array = [ 1, 'a', 2, 'a', 'ã', 'ã', 1 ];
var uniqueArray = array.filter(
function( value, index, self )
{
// é
åselfã®èŠçŽ valueã®æåã®ã€ã³ããã¯ã¹ãšãindexãçãããªãã°trueãè¿ã
return self.indexOf( value ) == index;
});
alert( uniqueArray.join() ); // 1,a,2,ã
Remove Duplicates from JavaScript Array - Stack Overflow
ãªããžã§ã¯ãã«ååã®ããããã£ãèšå®ããå ŽåãåŸã«èšå®ãããã®ã§å ã®ãããäžæžãããŸãããã®ä»æ§ãå©çšããããšã§ãéè€ããããããã£ãæããªããªããžã§ã¯ããäœæã§ããŸãããããŠãã®ãªããžã§ã¯ãã®ãã¹ãŠã®ããããã£ã®å€ãé åã«ãŸãšããããšã§ãèŠçŽ ã«éè€ã®ãªãé åãäœæã§ããŸãã
var array = [ 1, 'a', 2, 'a', 'ã', 'ã', 1 ];
var obj = {};
for( var i = 0; i < array.length; i++ )
{
obj[ array[ i ] ] = array[ i ];
}
// alert( JSON.stringify( obj ) );
// {"1":1,"2":2,"a":"a","ã":"ã"}
var uniqueArray = [];
for( var key in obj )
{
uniqueArray.push( key );
}
alert( uniqueArray.join() ); // 1,2,a,ã
Remove Duplicates from JavaScript Array - Stack Overflow
join()ã¡ãœããã§ã¯ãé åã®èŠçŽ ãæååã«å€æããŠé£çµã§ããŸãããã£ãŠã
var text = [ 'a', 'b', 'c' ].join( '' );
// abcãè¿ããã
ã®ããã«æååãäœæã§ããŸããäžæ¹ã§ãæååãé åã«åå²ããã«ã¯String.split()ã䜿çšããŸãã
string = array.join( separator )Array.join - JavaScript | MDN
separatorãçç¥ãããšãã,ããæå®ãããã®ãšã¿ãªãããŸãã
[1,2].join(); // "1,2"
é£çµæã«ã¯æååã«å€æããããããè«çå€ãªã©ããã¹ãŠæååãšãªããŸãã
[true, false, null, '', Math].join(); // "true,false,,,[object Math]"
æååãžã¯toString()ã§å€æãããããã(0x10).toString()ã"16"ãè¿ãããã«ãæ°å€ã¯10鲿°ã§åºåãããŸãã
[0x10, 10].join(); // "16,10"
èŠçŽ ã1ã€ãããªãå Žåã«ã¯separatorã¯äœ¿çšãããããã®1ã€ã®èŠçŽ ã倿ãããã ãã®æååãè¿ãããŸãã
[1].join('&'); // "1"
äžæ¹ã§èŠçŽ ã1ã€ããªããã°ã空æååãè¿ãããŸãã
[].join('&'); // ""
é åãæååã«å€æããããšã§ãé åã®ãã¹ãŠã®èŠçŽ ã確èªã§ããŸããããã¯toString()ãåŒã³åºãããšãšå矩ã§ããããŸãåŸãããçµæã¯join()ã§è¿ãããæååãšåãã§ããã€ãŸã次ã®4ã€ã®åŠçã¯ããã¹ãŠåãçµæãåŸãŸãã
alert( array ); alert( array.toString() ); alert( array.join() ); alert( array.join( ',' ) );
ãã®ããšãããããããã«ãjoin()ã®åŒæ°ã倿Žããããšã§äžèЧã®åœ¢åŒã倿Žã§ããŸããããšãã°æ¹è¡æå (\n) ããããã¯brèŠçŽ ã§é£çµãããšäžèЧãèŠããããªããŸãã
alert( array.join( '\n' ) );
é
ååŒãæååãªã©ã®å埩å¯èœãªããžã§ã¯ãã®åã«ã...ããšèšè¿°ããããšã§ãããããã®å Žæã§å±éã§ããŸããã¹ãã¬ããæ§æ (...) - JavaScript | MDN