序列化/字符串化javascript对象

序列化/字符串化javascript对象,javascript,stringify,Javascript,Stringify,我想序列化/字符串化一个javascript对象,该对象可以使用signer作为字符串在浏览器之间传递 信号器部分正在工作,因为我可以发送和接收聊天信息 这是我的简易试验台 function UserObject() { var _firstName = 't'; this.getFirstName = function () { return _firstName; } this.setFirstName = function (value) { _firstN

我想序列化/字符串化一个javascript对象,该对象可以使用signer作为字符串在浏览器之间传递

信号器部分正在工作,因为我可以发送和接收聊天信息

这是我的简易试验台

function UserObject() {
  var _firstName = 't';
  this.getFirstName = function () {
    return _firstName;
  }
  this.setFirstName = function (value) {
    _firstName = value;
  }
}

var userObject = new UserObject();
console.log(userObject.getFirstName());
userObject.setFirstName('tony');
console.log(JSON.stringify(userObject));
console.log("First Name: " + userObject.getFirstName());
这是我收到的结果

> "t"
> "{}"
> "First Name: tony"
为什么console.log(JSON.stringify(userObject))失败了?
当我可以设置值时,重置该值,并且在我尝试查看对象时看不到该值。

因为您的
UserObject
没有任何要序列化的公共字段


请尝试分配给
此.firstName

,因为您的
用户对象
没有任何要序列化的公共字段


尝试将
指定给此.firstName

您的值存储在
\u firstName
中,它是
用户对象
函数中的局部变量。它不存储在对象中,因此序列化对象不会显示它

对象中存储的唯一内容是两个函数(
getFirstName
setFirstName
),但JSON不能表示函数


这就是JSON结果显示空对象的原因。

您的值存储在
\u firstName
中,它是
UserObject
函数中的一个局部变量。它不存储在对象中,因此序列化对象不会显示它

对象中存储的唯一内容是两个函数(
getFirstName
setFirstName
),但JSON不能表示函数


这就是JSON结果显示空对象的原因。

它失败了,因为您只有私有变量

这里是公共财产

函数UserObject(){
var_firstName='t';
this.getFirstName=函数(){
返回此.firstName | | | u firstName;
}
this.setFirstName=函数(值){
this.firstName=值;
}
}
var userObject=new userObject();
log(userObject.getFirstName());
setFirstName('tony');
log(JSON.stringify(userObject));

log(“名字:+userObject.getFirstName())它失败了,因为您只有私有变量

这里是公共财产

函数UserObject(){
var_firstName='t';
this.getFirstName=函数(){
返回此.firstName | | | u firstName;
}
this.setFirstName=函数(值){
this.firstName=值;
}
}
var userObject=new userObject();
log(userObject.getFirstName());
setFirstName('tony');
log(JSON.stringify(userObject));

log(“名字:+userObject.getFirstName())这就是我要的

    var UserObject = {
        firstName: '',
        lastName: ''
    };
    UserObject.firstName = 'tony';
    var myObjStr = JSON.stringify(UserObject);
    console.log(myObjStr);
    var uo = JSON.parse(myObjStr);
    console.log(uo);

这就是我要的

    var UserObject = {
        firstName: '',
        lastName: ''
    };
    UserObject.firstName = 'tony';
    var myObjStr = JSON.stringify(UserObject);
    console.log(myObjStr);
    var uo = JSON.parse(myObjStr);
    console.log(uo);
副本的副本