单个运算符的特殊案例:
console.log(+true); // 1
console.log(-true); // -1
console.log(!true); // false
console.log(+undefined);// NaN
console.log(-undefined);// NaN
console.log(!undefined);// true
console.log(+false);// 0
console.log(-false);// -0
console.log(!false);// true
console.log(+null); // 0
console.log(-null); // -0
console.log(!null); // true
关于0的特殊情况:
0/0型
console.log(0/0); // NaN
console.log(""/0); // NaN
console.log([]/0); // NaN
console.log({}/0); // NaN
console.log(false/0); // NaN
console.log(undefined/0);// NaN
console.log(null/0); // NaN
console.log(""/""); // NaN
console.log(0/""); // NaN
console.log([]/""); // NaN
console.log({}/""); // NaN
console.log(undefined/"");// NaN
console.log(null/""); // NaN
console.log(false/""); // NaN
console.log(undefined/undefined);// NaN
console.log(null/undefined); // NaN
console.log(false/undefined); // NaN
console.log(0/undefined); // NaN
console.log(""/undefined); // NaN
console.log([]/undefined); // NaN
console.log({}/undefined); // NaN
console.log(null/null); // NaN
console.log(undefined/null);// NaN
console.log(false/null); // NaN
console.log(0/null); // NaN
console.log(""/null); // NaN
console.log([]/null); // NaN
console.log({}/null); // NaN
console.log([]/[]); // NaN
console.log({}/[]); // NaN
console.log(’’/[]); // NaN
console.log(0/[]); // NaN
console.log(undefined/[]); // NaN
console.log(null/[]); // NaN
console.log(false/[]); // NaN
console.log({}/{}); // NaN
console.log([]/{}); // NaN
console.log(0/{}); // NaN
console.log(’’/{}); // NaN
console.log(false/{}); // NaN
console.log(null/{}); // NaN
console.log(undefined/{}); // NaN
1/0型
console.log(1/0); // Infinity
console.log(“1”/0); // Infinity
console.log(true/0); // Infinity
console.log([0]/0); // NaN
console.log({“0”:0}/0); // NaN
console.log(1/""); // Infinity
console.log(“1”/""); // Infinity
console.log(true/""); // Infinity
console.log([0]/""); // NaN
console.log({“0”:0}/""); // NaN
console.log(1/undefined); // NaN
console.log(“1”/undefined); // NaN
console.log(true/undefined); // NaN
console.log([0]/undefined); // NaN
console.log({“0”:0}/undefined); // NaN
console.log(1/null); // Infinity
console.log(“1”/null); // Infinity
console.log(true/null); // Infinity
console.log([0]/null); // NaN
console.log({“0”:0}/null); // NaN
console.log(1/false); // Infinity
console.log(“1”/false); // Infinity
console.log(true/false); // Infinity
console.log([0]/false); // NaN
console.log({“0”:0}/false); // NaN
console.log(1/[]); // Infinity
console.log(“1”/[]); // Infinity
console.log(true/[]); // Infinity
console.log([0]/[]); // NaN
console.log({“0”:0}/[]); // NaN
console.log(1/{}); // NaN
console.log(“1”/{}); // NaN
console.log(true/{}); // NaN
console.log([0]/{}); // NaN
console.log({“0”:0}/{}); // NaN
其他
console.log(true - true); // 0
console.log(true - false); // 1
console.log(true - null); // 1
console.log(true - 0); // 1
console.log(true - “0”); // 1
console.log(true - undefined); // NaN
console.log(true + true); // 2
console.log(true + false); // 1
console.log(true + null); // 1
console.log(true + 0); // 1
console.log(true + “0”); // true0
console.log(true + undefined); // NaN
console.log(false - false); // 0
console.log(false - true); // -1
console.log(false - null); // 0
console.log(false - 0); // 0
console.log(false - “0”); // 0
console.log(false - undefined); // NaN
console.log(false + false); // 0
console.log(false + true); // 1
console.log(false + null); // 0
console.log(false + 0); // 0
console.log(false + “0”); // false0
console.log(false + undefined); // NaN
console.log(null - null); // 0
console.log(null - true); // -1
console.log(null - false); // 0
console.log(null - 0); // 0
console.log(null - “0”); // 0
console.log(null - undefined); // NaN
console.log(null + null); // 0
console.log(null + true); // 1
console.log(null + false); // 0
console.log(null + 0); // 0
console.log(null + “0”); // null0
console.log(null + undefined); // NaN
console.log(undefined - undefined); // NaN
console.log(undefined - null); // NaN
console.log(undefined - false); // NaN
console.log(undefined - true); // NaN
console.log(undefined - 0); // NaN
console.log(undefined - “0”); // NaN
console.log(undefined + undefined); // NaN
console.log(undefined + null); // NaN
console.log(undefined + false); // NaN
console.log(undefined + true); // NaN
console.log(undefined + 0); // NaN
console.log(undefined + “0”); // undefined0
来源:CSDN
作者:ttttqqqqq
链接:https://blog.csdn.net/ttttqqqqq/article/details/103463235