トップページ > Windows > 2011年02月15日 > 5kt/fSLl

書き込み順位&時間帯一覧

17 位/400 ID中時間01234567891011121314151617181920212223Total
書き込み数0021000000000000000000003



使用した名前一覧書き込んだスレッド一覧
名無し~3.EXE
55
お前ら、wsh使ってますか? Part8

書き込みレス一覧

お前ら、wsh使ってますか? Part8
55 :名無し~3.EXE[sage]:2011/02/15(火) 02:33:03 ID:5kt/fSLl
ちょっと教えてください。
時刻の文字列から、合計の秒数を計算して表示しようとしてるのだけれど、数字によって表示がおかしくなります。
何か大事なことを忘れてるんでしょうか?
わけがわからないです。

oshl=new ActiveXObject('WScript.Shell');
var nsec=33.48 ;
nsec=nsec + 60;
oshl.popup(nsec);/ * なにも文字を付け足さないと表示は問題ない * /;
oshl.popup(nsec +''+ " 60を足した結果に、文字を付け足すと数字がおかしくなる");

var nsec=33.48 ;
nsec=nsec + 100;
oshl.popup(nsec);/ * なにも文字を付け足さないと表示は問題ない * /;
oshl.popup(nsec +''+ " 100を足した結果に、文字を付け足しても数字がおかしくならない");
お前ら、wsh使ってますか? Part8
56 :55[sage]:2011/02/15(火) 02:49:44 ID:5kt/fSLl
わかりにくいかもしれないんで、書き直します。たとえば、関数の戻り値がおかしくなっちゃうのです。

test=function(n){
return( "合計 "+ (33.48 + n)+ "" + " 秒です");
};

oshl=new ActiveXObject('WScript.Shell');

n=60;
oshl.popup( test(n));// この場合は、数字がおかしい。

n=100;
oshl.popup( test(n));// この場合は、数字は問題ない。

お前ら、wsh使ってますか? Part8
57 :55[sage]:2011/02/15(火) 03:13:19 ID:5kt/fSLl
ぐぐったら、これがjavascriptの仕様なんだとw そ、そんな馬鹿なと思ったけど。
少数を含む数値を1000倍にしといて整数にしてから計算して、1000で割ることにしました。まんどくせえw

test=function(n){
return( "合計 "+ (33.48 + n)+ "" + " 秒です");
};

test2=function(n){
return( "合計 "+ (((33.48)*1000 + (n*1000))/1000)+ "" + " 秒です");
};

oshl=new ActiveXObject('WScript.Shell');

n=60;
oshl.popup( test(n));// 数字がおかしい。

n=60;
oshl.popup( test2(n));// 数字は問題ない。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。