JS中各种原始值类型转换表格
| 原始值 | 转换成布尔 | 转换为字符串 | 转换为数字 | isFinite | typeof |
|---|---|---|---|---|---|
| 1 | true | '1' | 1 | true | number |
| -1 | true | '-1' | -1 | true | number |
| 5.123 | true | '5.123' | 5.123 | true | number |
| 0 | false | '0' | 0 | true | number |
| -0 | false | '0' | -0 | true | number |
| document.all | false | [object HTMLAllCollection] | NaN | false | undefined |
| Infinity | true | 'Infinity' | Infinity | false | number |
| -Infinity | true | '-Infinity' | -Infinity | false | number |
| '' | false | '' | 0 | true | string |
| "" | false | '' | 0 | true | string |
| '1.5' | true | '1.5' | 1.5 | true | string |
| 'one' | true | 'one' | NaN | false | string |
| '0' | true | '0' | 0 | true | string |
| '-0' | true | '-0' | -0 | true | string |
| ' ' | true | ' ' | 0 | true | string |
| {} | true | [object Object] | NaN | false | object |
| [] | true | '' | 0 | true | object |
| ['1'] | true | '1' | 1 | true | object |
| [1] | true | '1' | 1 | true | object |
| ['one'] | true | 'one' | NaN | false | object |
| true | true | 'true' | 1 | true | boolean |
| false | false | 'false' | 0 | true | boolean |
| undefined | false | 'undefined' | NaN | false | undefined |
| null | false | 'null' | 0 | true | object |
| NaN | false | 'NaN' | NaN | false | number |
MD文档
md
| 原始值 | 转换成布尔 | 转换为字符串 | 转换为数字 | isFinite | typeof |
|-------------|-----------|----------------------------|-----------|------------|-----------|
| 1 | true | '1' | 1 | true | number |
| -1 | true | '-1' | -1 | true | number |
| 5.123 | true | '5.123' | 5.123 | true | number |
| 0 | false | '0' | 0 | true | number |
| -0 | false | '0' | -0 | true | number |
| document.all| false | [object HTMLAllCollection] | NaN | false | undefined |
| Infinity | true | 'Infinity' | Infinity | false | number |
| -Infinity | true | '-Infinity' | -Infinity | false | number |
| '' | false | '' | 0 | true | string |
| "" | false | '' | 0 | true | string |
| '1.5' | true | '1.5' | 1.5 | true | string |
| 'one' | true | 'one' | NaN | false | string |
| '0' | true | '0' | 0 | true | string |
| '-0' | true | '-0' | -0 | true | string |
| ' ' | true | ' ' | 0 | true | string |
| {} | true | [object Object] | NaN | false | object |
| [] | true | '' | 0 | true | object |
| ['1'] | true | '1' | 1 | true | object |
| [1] | true | '1' | 1 | true | object |
| ['one'] | true | 'one' | NaN | false | object |
| true | true | 'true' | 1 | true | boolean |
| false | false | 'false' | 0 | true | boolean |
| undefined | false | 'undefined' | NaN | false | undefined |
| null | false | 'null' | 0 | true | object |
| NaN | false | 'NaN' | NaN | false | number || 原始值 | 转换成布尔 | 转换为字符串 | 转换为数字 | isFinite | typeof |
|-------------|-----------|----------------------------|-----------|------------|-----------|
| 1 | true | '1' | 1 | true | number |
| -1 | true | '-1' | -1 | true | number |
| 5.123 | true | '5.123' | 5.123 | true | number |
| 0 | false | '0' | 0 | true | number |
| -0 | false | '0' | -0 | true | number |
| document.all| false | [object HTMLAllCollection] | NaN | false | undefined |
| Infinity | true | 'Infinity' | Infinity | false | number |
| -Infinity | true | '-Infinity' | -Infinity | false | number |
| '' | false | '' | 0 | true | string |
| "" | false | '' | 0 | true | string |
| '1.5' | true | '1.5' | 1.5 | true | string |
| 'one' | true | 'one' | NaN | false | string |
| '0' | true | '0' | 0 | true | string |
| '-0' | true | '-0' | -0 | true | string |
| ' ' | true | ' ' | 0 | true | string |
| {} | true | [object Object] | NaN | false | object |
| [] | true | '' | 0 | true | object |
| ['1'] | true | '1' | 1 | true | object |
| [1] | true | '1' | 1 | true | object |
| ['one'] | true | 'one' | NaN | false | object |
| true | true | 'true' | 1 | true | boolean |
| false | false | 'false' | 0 | true | boolean |
| undefined | false | 'undefined' | NaN | false | undefined |
| null | false | 'null' | 0 | true | object |
| NaN | false | 'NaN' | NaN | false | number |类型转换测试函数
js
let testArr = [1, -1, 5.123, 0, -0, document.all, Infinity, -Infinity, '', "", '1.5', 'one', '0', '-0', ' ', {}, [], ['1'], [1], ['one'], true, false, undefined, null, NaN]
let resultArr = []
for (let i = 0; i < testArr.length; i++) {
try {
resultArr.push({
'值': testArr[i],
'转换成布尔': Boolean(testArr[i]),
'转换为字符串': String(testArr[i]),
'转换为数字': Number(testArr[i]),
'isFinite': isFinite(testArr[i]),
'typeof': typeof (testArr[i]),
})
} catch (e) {
resultArr.push({
'值': testArr[i],
'转换成布尔': Boolean(testArr[i]),
'转换为字符串': String(testArr[i]),
'转换为数字': Number(testArr[i]),
'isFinite': '无效',
'typeof': typeof (testArr[i]),
})
}
}
console.table(resultArr)
console.log(JSON.stringify(resultArr))let testArr = [1, -1, 5.123, 0, -0, document.all, Infinity, -Infinity, '', "", '1.5', 'one', '0', '-0', ' ', {}, [], ['1'], [1], ['one'], true, false, undefined, null, NaN]
let resultArr = []
for (let i = 0; i < testArr.length; i++) {
try {
resultArr.push({
'值': testArr[i],
'转换成布尔': Boolean(testArr[i]),
'转换为字符串': String(testArr[i]),
'转换为数字': Number(testArr[i]),
'isFinite': isFinite(testArr[i]),
'typeof': typeof (testArr[i]),
})
} catch (e) {
resultArr.push({
'值': testArr[i],
'转换成布尔': Boolean(testArr[i]),
'转换为字符串': String(testArr[i]),
'转换为数字': Number(testArr[i]),
'isFinite': '无效',
'typeof': typeof (testArr[i]),
})
}
}
console.table(resultArr)
console.log(JSON.stringify(resultArr))
liang14658fox