计算器
一个带历史记录的小型表达式计算器。
- 分类
- Others
- 默认尺寸
- 220 × 330
它做什么
输入算术表达式,结果会在输入框上方随打随更新。按 Enter 把它提交到历史列表;点击任意一条历史记录,即可把那个结果取回输入框,接着往下算。
它支持 + - * /、括号、小数、正负号、以 ^ 表示的右结合幂运算,以及表示「除以 100」的 %。千位分隔符会被忽略,所以粘贴 1,250 * 3 也能算。
历史记录保留最近八条,且只存在于内存中;关闭应用即清空。
数据从哪里来
哪儿都不来。求值在小部件内部由一个手写的小型解析器完成。
值得一提的是,它不使用 JavaScript 的 eval。应用附带的内容安全策略禁止动态代码求值,因此在发布版本中,基于 eval 的计算器会在每一个表达式上失败。这个解析器的存在,是为了让小部件从构造上就安全,而不是靠一条策略来保证。
限制
- 仅限算术。没有变量、函数、单位换算或三角函数。
- 历史记录上限为八条,且不会在会话之间保留。
- 结果按你选择的小数位数显示(2、4、6 或 8 位);底层计算使用完整的浮点数。