减法(-)
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
减法(-
)运算符将两个操作数相减,并产生两者之差。
尝试一下
console.log(5 - 3);
// Expected output: 2
console.log(3.5 - 5);
// Expected output: -1.5
console.log(5 - "hello");
// Expected output: NaN
console.log(5 - true);
// Expected output: 4
语法
js
x - y
描述
减法运算符将两个操作数转换为数值,并根据两个操作数的类型执行数字减法或 BigInt 减法。如果类型不匹配,则抛出 TypeError
。
示例
数值减法
js
// Number - Number -> subtraction
5 - 3; // 2
// Number - Number -> subtraction
3 - 5; // -2
非数值减法
js
// String - Number -> subtraction
"foo" - 3; // NaN; "foo" is converted to the number NaN
// Number - String -> subtraction
5 - "3"; // 2; "3" is converted to the number 3
BigInt 减法
js
// BigInt - BigInt -> subtraction
2n - 1n; // 1n
你不能在减法中混合使用 BigInt 和数字操作数。
js
2n - 1; // TypeError: Cannot mix BigInt and other types, use explicit conversions
2 - 1n; // TypeError: Cannot mix BigInt and other types, use explicit conversions
规范
Specification |
---|
ECMAScript® 2025 Language Specification # sec-subtraction-operator-minus |
浏览器兼容性
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Subtraction ( - ) |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.