array.map( callback, thisObject )メソッドは、配列の各要素に、引数「callback」に指定したコールバック関数を実行し、結果を格納した新たな配列を生成するメソッド。コールバック関数内でthisキーワードが参照するオブジェクトを、引数「thisObject」に指定できる。
構文
array.map( callback, thisObject )
引数
- callback
- 配列の各要素毎に実行したいコールバック関数を指定する。
- thisObject
- コールバック関数内で、thisキーワードが参照するオブジェクトを指定できる。
- 省略可能。詳しくは、array.map( callback )へ。
戻り値
コールバック関数の処理結果を格納した新たな配列。
コールバック関数の構文
function callback( value, index, array ) {
// 配列の各要素に実行する処理
}
// 配列の各要素に実行する処理
}
引数
- value
- 配列要素の値。
- index
- 配列要素のインデックス。
- array
- 要素を格納している配列オブジェクト。
サンプル
消費税の計算
<script type="text/javascript">
function tax( $value ) {
return $value * this.tax;
}
function taxIncluded( $value ) {
return $value * this.taxIncluded;
}
var $taxRate = { tax: 0.05, taxIncluded: 1.05 };
var $price = new Array( 1000, 2500, 500, 13000, 300 );
var $priceTax = $price.map( tax, $taxRate );
var $priceTaxIncluded = $price.map( taxIncluded, $taxRate );
for ( var $counterVar = 0; $counterVar < $price.length; $counterVar++ ) {
document.write( '税抜:' + $price[$counterVar] + '円' );
document.write( ' + ' );
document.write( '税:' + $priceTax[$counterVar] + '円' );
document.write( ' = ' );
document.write( '税込:' + $priceTaxIncluded[$counterVar] + '円' );
document.write( '<br />' );
}
</script>
function tax( $value ) {
return $value * this.tax;
}
function taxIncluded( $value ) {
return $value * this.taxIncluded;
}
var $taxRate = { tax: 0.05, taxIncluded: 1.05 };
var $price = new Array( 1000, 2500, 500, 13000, 300 );
var $priceTax = $price.map( tax, $taxRate );
var $priceTaxIncluded = $price.map( taxIncluded, $taxRate );
for ( var $counterVar = 0; $counterVar < $price.length; $counterVar++ ) {
document.write( '税抜:' + $price[$counterVar] + '円' );
document.write( ' + ' );
document.write( '税:' + $priceTax[$counterVar] + '円' );
document.write( ' = ' );
document.write( '税込:' + $priceTaxIncluded[$counterVar] + '円' );
document.write( '<br />' );
}
</script>
↓↓↓出力結果↓↓↓