JavaScript之undefined的加(+)减(-)乘(*)除(/)和取模(%)运算
Posted web半晨
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript之undefined的加(+)减(-)乘(*)除(/)和取模(%)运算相关的知识,希望对你有一定的参考价值。
1、示例代码
1.1、加(+)运算
console.log(undefined + undefined);
// NaN
console.log(undefined + null);
// NaN
console.log(null + undefined);
// NaN
console.log(undefined + NaN);
// NaN
console.log(NaN + undefined);
// NaN
console.log(undefined + true);
// NaN
console.log(true + undefined);
// NaN
console.log(undefined + false);
// NaN
console.log(false + undefined);
// NaN
console.log(undefined + 1);
// NaN
console.log(1 + undefined);
// NaN
console.log(undefined + 0);
// NaN
console.log(0 + undefined);
// NaN
console.log(undefined + 2);
// NaN
console.log(2 + undefined);
// NaN
console.log(undefined + 'true');
// undefinedtrue
console.log('true' + undefined);
// trueundefined
console.log(undefined + '0');
// undefined0
console.log('0' + undefined);
// 0undefined
console.log(undefined + []);
// undefined
console.log([] + undefined);
// undefined
console.log(undefined + [1]);
// undefined1
console.log([1] + undefined);
// 1undefined
console.log(undefined + [1, 2]);
// undefined1,2
console.log([1, 2] + undefined);
// 1,2undefined
console.log(undefined + );
// undefined[object Object]
console.log( + undefined);
// [object Object]undefined
console.log(undefined + names: '' );
// undefined[object Object]
console.log( names: '' + undefined);
// undefined[object Object]
console.log(undefined + names: '159' );
// undefined[object Object]
console.log( names: '159' + undefined);
// [object Object]undefined
1.2、减(-)运算
console.log(undefined - undefined);
// NaN
console.log(undefined - null);
// NaN
console.log(null - undefined);
// NaN
console.log(undefined - NaN);
// NaN
console.log(NaN - undefined);
// NaN
console.log(undefined - true);
// NaN
console.log(true - undefined);
// NaN
console.log(false - undefined);
// NaN
console.log(undefined - 1);
// NaN
console.log(1 - undefined);
// NaN
console.log(0 - undefined);
// NaN
console.log(2 - undefined);
// NaN
console.log(undefined - 'true');
// NaN
console.log('true' - undefined);
// NaN
console.log(undefined - '0');
// NaN
console.log('0' - undefined);
// NaN
console.log(undefined - []);
// NaN
console.log([] - undefined);
// NaN
console.log(undefined - [1]);
// NaN
console.log([1] - undefined);
// NaN
console.log(undefined - [1, 2]);
// NaN
console.log([1, 2] - undefined);
// NaN
console.log(undefined - );
// NaN
console.log( - undefined);
// NaN
console.log(undefined - names: '' );
// NaN
console.log( names: '' - undefined);
// NaN
console.log( names: '159' - undefined);
// NaN
2、总结
1、undefined与
undefined
||null
||NaN
||boolean
||number
类型做加(+)运算,不分先后,结果都为:NaN
。
2、undefined与字符串
进行加(+)运算,不分先后,从左往右按字符串
相加。
3、undefined与数组
进行加(+)运算时会调用.toString()
方法,不分先后,结果为:''||'1,2'||'1,2,3'
,并从左往右按字符串
相加。
4、undefined与对象
进行加(+)运算时会调用.toString()
方法,不分先后,结果为:[object Object]
,并从左往右按字符串
相加。
5、undefined与任何类型的数据进行减(-)||乘(*)||除(/)||取模(%)
运算,不分先后,结果都为:NaN
。
以上是关于JavaScript之undefined的加(+)减(-)乘(*)除(/)和取模(%)运算的主要内容,如果未能解决你的问题,请参考以下文章