json对象在浏览器中使用console.log输出左侧能展开,字符串没有;根据这个特点可以区分该字符串到底是json对象还是json字符串,也可以通过函数typeof来区分
定义js代码
<script>
var person = {
name: '张三',
age: 10,
major: false,
married: false,
school: null,
toy: ['吉他', '游泳', '轮滑'],
toy: {
name: '小猪佩奇',
color: 'red'
}
}
console.log("我是json对象:", person);
//json对象转换成json字符串 也称为序列化
var jsonStr = JSON.stringify(person);
console.log("我是json字符串", jsonStr)
//json字符串转换成json对象 也称为反序列化
var jsonObj = JSON.parse(jsonStr);
console.log("我是json对象:", person);
</script>
输出结果
使用typeof判断类型
<script>
var person = {
name: '张三',
age: 10,
major: false,
married: false,
school: null,
toy: ['吉他', '游泳', '轮滑'],
toy: {
name: '小猪佩奇',
color: 'red'
}
}
console.log(typeof person)
//json对象转换成json字符串
var jsonStr = JSON.stringify(person);
console.log(typeof jsonStr)
</script>
输出结果:发现json对象的类型是object,json字符串的类型是string