2017-06-23 21 views
0

var timeCost = [];javascriptで数値の配列に値を掛ける方法は?

var ride_time = 30;

var cost_per_minute = [0.2、0.35、0.4、0.45];用

(I = 0せ; I < cost_per_minute.length; iは++){

timeCost.push(cost_per_minute [I] * ride_time)

}

にconsole.log(timeCost)

+1

timeCost.push(cost_per_minute [I] * ride_time)...持ってください。最初にコンソールを見ると、[i] *が無効であることがわかります –

+1

"cost_per_minute"値の長さは4ですが、このループは決して実行されません! –

答えて

0

コードの2箇所:

ループのための第2の部分は、一般的に、カウンタの状態(すなわちi)である配列の総数よりも少ない(.IE cost_per_minute.length)I = 0(VARに対する

;

は、アレイ内の要素の構文はnameOfArray[i]私は++ i < cost_per_minute.length;){可変インデックス番号としてiとなります。

timeCost.push(cost_per_minute[i] * ride_time)

}

var timeCost =[]; 
 

 
var ride_time = 30; 
 

 
var cost_per_minute = [0.2, 0.35, 0.4, 0.45]; 
 

 
for (let i = 0; i < cost_per_minute.length; i++){ 
 

 
    timeCost.push(cost_per_minute[i]*ride_time) 
 

 
} 
 

 

 
console.log(timeCost)

3

これは.map()とはるかに簡潔である:

let cost_per_minute... 
const ride_time = 30; 
let timeCost = cost_per_minute.map(x => x * ride_time); 
1

var ride_time = 30; 
 
var cost_per_minute = [0.2, 0.35, 0.4, 0.45] 
 
var timeCost = cost_per_minute.map(function(i){return i* ride_time}) 
 
console.log(timeCost)

関連する問題