ãªã 6.35.toFixed(1) == 6.3?
ããã¥ã¡ã³ãã«ããã¨ãMath.round 㨠toFixed ã¯ä¸¡æ¹ã¨ãæãè¿ãæ°å¤ã«ä¸¸ãã¾ã: 0..4 ã¯ä¸ããã5..9 ã¯ä¸ããã¾ãã
ä¾ãã°:
alert( 1.35.toFixed(1) ); // 1.4
ä¸ã®ä¼¼ãä¾ã§ã¯ããªã 6.35 ã 6.4 ã§ã¯ãªã 6.3 ã«ä¸¸ããããã®ã§ããããï¼
alert( 6.35.toFixed(1) ); // 6.3
æ£ããæ¹æ³ã§ 6.35 ã丸ããæ¹æ³ã¯ã©ããªãã§ãããï¼
å
é¨çã«ã¯ãå°æ°é¨å 6.35 ã¯ç¡éã®ãã¤ããªã§ãããã®ãããªå ´åã¯ãã¤ãã®ããã«ã精度ãä½ä¸ããããã®ãä¿åããã¦ãã¾ãã
è¦ã¦ã¿ã¾ããã:
alert( 6.35.toFixed(20) ); // 6.34999999999999964473
精度ã®ä½ä¸ã¯æ°å¤ã®ã¤ã³ã¯ãªã¡ã³ã/ãã¯ãªã¡ã³ã両æ¹ãå¼ãèµ·ããå¯è½æ§ãããã¾ãããã®ç¹å®ã®ã±ã¼ã¹ã§ãæ°å¤ã¯å°ãå°ãããªãããããã訳ã§ä¸¸ãä¸ãããã¾ãã
ã¾ãã1.35 ã¯ä½ã§ãããï¼
alert( 1.35.toFixed(20) ); // 1.35000000000000008882
ããã§ã¯ã精度ã®ä½ä¸ã¯æ°å¤ãå°ã大ãããã¾ããããªã®ã§ä¸¸ãä¸ãããã¾ãã
æ£ããæ¹æ³ã§ä¸¸ãããå ´åã6.35 ã§åé¡ã解決ããã«ã¯ã©ãããã°ããã§ããï¼
ãã®ããã«ã¯ã丸ããåã«æ´æ°ã«è¿ã¥ããå¿ è¦ãããã¾ã:
alert( (6.35 * 10).toFixed(20) ); // 63.50000000000000000000
63.5 ã¯ã¾ã£ãã精度ã®ä½ä¸ããªããã¨ã«æ³¨æãã¦ãã ãããããã¯ãå°æ°é¨å 0.5 ã¯å®éã«ã¯ 1/2 ã ããã§ãã2ã®ã¹ãä¹ã§é¤ç®ãããåæ°ã¯ããã¤ããªã·ã¹ãã ã§æ£ç¢ºã«è¡¨ç¾ããã¾ããä»åº¦ã¯ããã丸ãããã¨ãã§ãã¾ã:
alert( Math.round(6.35 * 10) / 10); // 6.35 -> 63.5 -> 64(丸ãããã) -> 6.4