简单的数据类型转换
发布于
对象数组字符串的相互转化
对象、数组、字符串之间相互转化的方法。在处理数据的时候经常会碰到不同数据类型之间的转换。
数组 - 字符串
学习 JavaScript
最基础的知识,拼接和分割字符串。
- 拼接:
const arr = [1,'a',false]
arr.join('')
// "1afalse"
- 分割
const str = 'abcd'
str.split('')
// [ "a", "b", "c", "d" ]
对象 - 字符串
JSON ( JavaScript Object Notation ) 可以将 js 在常见的数据类型和 JSON 字符串之间相互转换。
- 序列化:
JSON.stringify({a:1,b:2})
// "{\"a\":1,\"b\":2}"
- 解析
JSON.parse("{\"a\":1,\"b\":2}")
// { a: 1, b: 2 }
对象 - 数组
可以使用 Object
的内置方法在对象和固定格式的数组之间相互转换。
Object.entries()
和Object.fromEntries()
一对相对的方法:
Object.entries( { a: 1, b: 2 } )
// [ [ "a", 1 ] , [ "b", 2 ] ]
Object.fromEntries( [ [ "a", 1 ] , [ "b", 2 ] ] )
// { a: 1, b: 2 }
- 对象到数组的单向转换:
// 只取键名
Object.keys(( { a: 1, b: 2 } ))
// [ "a", "b" ]
// 只取值
Object.values(( { a: 1, b: 2 } ))
// [ 1, 2 ]
- 数组到对象的单向转换:
// 以 index 为键名
Object.assign( {} , [ 'a', 'b' ] )
// { 0: "a", 1: "b" }
其他
常见的 js 数据类型都有内置的方法 toString()
, 可以将其他类型转为字符串
类型 | 示例 | 结果 |
---|---|---|
Number | 123 | ”123” |
Array | [1,2,‘3’] | “1,2,3” |
Object | { a: 1 } | “[object Object]“ |
Date | new Date(0) | “Thu Jan 01 1970 07:30:00 GMT+0730 (新加坡标准时间)” |