将一个对象转换为字符串

1202

如何将 JavaScript 对象转换为字符串?

示例:

var o = {a:1, b:2}
console.log(o)
console.log('Item: ' + o)

输出:

对象 { a=1, b=2} // 非常良好易读 :)
条目: [object Object] // 不知道里面是什么 :(


7
将字符串转换为什么目的?你是指序列化,以便以后可以从字符串构建对象吗?还是只是为了显示? - Shadow The Spring Wizard
22
作者已经离开多年,但是在我脑海中阅读了多年后,我猜测问题的入口是console.log(obj),它会显示带有属性的对象,而console.log('obj: '+obj)则会产生迷惑。 - Danubian Sailor
2
无法简单地将两个对象相加,如果可以这样做,值类型和引用类型之间就没有区别了。 - Nishant Kumar
13
变量 o 等于 {a:1, b:2}; 打印出字符串 'Item: ' 和对象 o 的 JSON 字符串形式。 - Nishant Kumar
30
如果是针对控制台输出的话,我建议使用 console.log("Item", obj);。不需要过于复杂的代码。 - soktinpk
显示剩余7条评论
42个回答

-1
setobjToString:function(obj){
        var me =this;
        obj=obj[0];
        var tabjson=[];
        for (var p in obj) {
            if (obj.hasOwnProperty(p)) {
                if (obj[p] instanceof Array){
                    tabjson.push('"'+p +'"'+ ':' + me.setobjToString(obj[p]));
                }else{
                    tabjson.push('"'+p +'"'+':"'+obj[p]+'"');
                }
            }
        }  tabjson.push()
        return '{'+tabjson.join(',')+'}';
    }

-1
如果你只是想简单地获取一个字符串输出,那么这应该可以工作: String(object)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接