2017-09-06 1 views
-3

を追加することで連結されていますJavaScriptのではなく、私は私のコードでこれらを使用しています

alert(mult); //1.114 
alert(profit); //10 
price = (mult * profit) + profit; 
alert(price); //11.14 should be 21.14 

私もprice = ((mult*profit) + profit);を試してみましたが、同じ結果を得ました。 (1.114*10) + 10;の代わりに1.114*10=11.14を実行しています。最後に追加の10を追加していません。

+0

を得ました。これは、「マルチ」または「利益」のいずれかが文字列であることを意味します。文字列を数値に変換するには、 'parseInt()'と 'parseFloat()'を使います。 – Sidney

+1

これは連結ではありません。追加(または連結)せずに乗算を行っています。連結していた場合、結果は "11.1410"となります。これをコンソールで実行してください: '' 1.114 '*' 10 '+' 10 '' – ps2goat

+1

私は再現できません。質問を閉じるための投票。 @raulxboxあなたの質問を編集して**完全で、最小限で、検証可能な例**を含めてください。 –

答えて

1

変数は、おそらく文字列で数値に変換するparseFloatを使用します。

mult = parseFloat(mult); 
profit = parseFloat(profit); 
price = (mult*profit) + profit 
+0

質問に答えません。 –

+0

それは動作しますが、それは21.00と表示されない小数点を取っていません21.14 – raulxbox

+0

@raulxbox更新された答えのようにparseFloat()を使用します。 –

1

multまたはprofitのいずれかがタイプstringで、タイプがnumberではない可能性があります。これは、明示的にキャストすることで修正できます。

あなたはこのようtypeofキーワードでブラウザのコンソール(つまり、DEVツール)であなたの変数のタイプを決定することができます:あなたがnumberに変換することができますstringあなたの変数のいずれかのタイプがある場合

typeof foo 

parseFloatで:

mult = parseFloat(mult); 
+0

は、私は、コンソールに何を得る – raulxbox

+0

デバッガのブレークポイントで、またはちょうど私が試した 'console'声明 –

+0

とコードのこれらの行を実行しながら、それらのコマンドを実行してみてくださいとありますその作業mult = parseFloat(mult);それは小数点を取っていません21.00を示していません21.14 – raulxbox

3

このように私はうまく動作します。連結が問題ではないと思われます。そうでなければ、値は'11 .1410 'になるからです。

var mult = 1.114; 
 
var profit = 10; 
 
var price = (mult*profit) + profit; 
 
alert(price);//11.14 should be 21.14

profit可変(または両方の変数)が文字列である場合、結果は "11.1410" であろう。ただmult値が文字列の場合

var mult = 1.114; 
 
    var profit = '10'; 
 
    var price = (mult*profit) + profit; 
 
    alert(price);//11.1410

結果が影響を受けそうです。

var mult = '1.114'; 
 
     var profit = 10; 
 
     var price = (mult*profit) + profit; 
 
     alert(price);//21.14

0

私は、これはクロムJSコンソールF12キーである走りました。

var mult = 1.114, profit = 10; 
console.log('mult=', mult);//1.114 
console.log('profit=', profit);//10 
price = (mult*profit) + profit; 
console.log('price=', price);//11.14 should be 21.14 

そして、あなたはそれを文字列を与えた場合、 `` +演算子は、その引数を連結し、これらの結果

mult= 1.114 
profit= 10 
price= 21.14 
関連する問題