<!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>Document</title> <script type="text/javascript" src="math.js"></script> </head> <body> <script type="text/javascript"> alert(math.sqrt(-4)); // 2i math.round(math.e, 3); // 2.718 math.atan2(3, -3) / math.pi; // 0.75 math.log(10000, 10); // 4 math.sqrt(-4); // 2i math.pow([ [-1, 2], [3, 1] ], 2); // [[7, 0], [0, 7]] // expressions alert(math.eval(‘12 / (2.3 + 0.7)‘)); // 4 math.eval(‘12.7 cm to inch‘); // 5 inch math.eval(‘sin(45 deg) ^ 2‘); // 0.5 math.eval(‘9 / 3 + 2i‘); // 3 + 2i math.eval(‘det([-1, 2; 3, 1])‘); // -7 /*默认精度设置为64位*/ math.config({ number: ‘BigNumber‘, precision: 64 }); alert(math.eval(‘0.1+0.2‘)); /*包含開始,去掉結尾*/ alert(math.range(1, 4)); console.log(math.add(0.1, 0.2)) //0.30000000000000004 console.log(math.format((math.add(math.bignumber(0.1), math.bignumber(0.2))))) //‘0.3‘ /*纯JavaScript代码解决*/ parseFloat((数学表达式).toFixed(digits)); // toFixed() 精度参数须在 0 与20 之间 parseFloat((0.1 + 0.2).toFixed(10)) //结果为0.3 parseFloat((0.3 / 0.1).toFixed(10)) // 结果为 3 parseFloat((0.7 * 180).toFixed(10)) //结果为126 parseFloat((1.0 - 0.9).toFixed(10)) // 结果为 0.1 parseFloat((9.7 * 100).toFixed(10)) // 结果为 970 parseFloat((2.22 + 0.1).toFixed(10)) // 结果为 2.32 </script> </body> </html>
math.js