前一段時間用到h5的本地存儲---需要把某個js對象存儲在瀏覽器的本地存儲中,用到了javascript對象的序列化與反序列化
所謂的序列化就是將對象的狀態信息轉換為可以存儲或傳輸的形式的過程,基本上所有的語言都有序列化對象的方法,例如:php中的 serialize() 與 unserialize() 方法 及 jsonencode() 與 jsondecode() 方法
下面來看一下將javascript對象序列化成json字符串及其反序列化:
javascript對象序列化為json格式的字符串:
1 var xiaoming = { 2 name: '小明', 3 age: 14, 4 gender: true, 5 height: 1.65, 6 grade: null, 7 'middle-school': '\"W3C\" Middle School', 8 skills: ['JavaScript', 'Java', 'Python', 'Lisp'] 9 }; 10 11 JSON.stringify(xiaoming); // '{"name":"小明","age":14,"gender":true,"height":1.65,"grade":null,"middle-school":"\"W3C\" Middle School","skills":["JavaScript","Java","Python","Lisp"]}'
反序列化:
拿到一個json格式的字符串,直接使用JSON.parse(),將其編程一個javascript對象
1 JSON.parse('[1,2,3,true]'); // [1, 2, 3, true] 2 JSON.parse('{"name":"小明","age":14}'); // Object {name: '小明', age: 14} 3 JSON.parse('true'); // true 4 JSON.parse('123.45'); // 123.45
具體用法請參考:廖雪峰教程