对象序列化是指将对象的状态转换为字符串;
序列化(Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程(百度百科);
为什么会有对象序列化?
var obj = {x:1, y:2};
当这句代码运行时,对象obj的内容会存储在一块内存中,而obj本身存储的只是这块内存的地址的映射而已。
简单的说,对象obj就是我们的程序在电脑通电时在内存中维护的一种东西,如果我们程序停止了或者电脑断电了,对象obj将不复存在。
那么如何把对象obj的内容保存在磁盘上呢(也就是说在没电时继续保留着)?
这时就需要把对象obj序列化,也就是说把obj的内容转换成一个字符串的形式,然后再保存在磁盘上。
另外,我们怎么通过HTTP协议把对象obj的内容发送到客户端呢?
没错,还是需要先把对象obj序列化,然后客户端根据接收到的字符串再反序列化(也就是将字符串还原为对象)解析出相应的对象。这也正是”百度百科—序列化“中描述的两个作用——存储、传输。