javascript - js 如何解析json成对象

查看:96
本文介绍了javascript - js 如何解析json成对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

var json='{"name":"gbw","age":18}';
data =(new Function("","return "+json))();

这个方法是怎么做到把字符转换成对象的?

解决方案

了解本题,你先要了解函数的创建方法,函数有多种创建方法,如:
function a(){};
var a=function(){};
var a=new function(){};
var a=Function('','');
var a=new Function('','');

想了解他们的不同请自行百度。
本题创建函数采用了最后一种方法,括号内传入的参数,语句必须以字符串形式传入。如果传入参数没有变量,故为空(也可以省略)。由于new Function("","return "+json)没有用变量接住,故创建了一个匿名函数,等同于

function(){
    return {"name":"gbw","age":18}
}

由于匿名函数不能像命名函数一样用函数名调用,故只能自调。即 (匿名函数体)();该语句就是执行该函数。故
(new Function("","return "+json))();等同于(function(){return {"name":"gbw","age":18})();
所以data={"name":"gbw","age":18};

这篇关于javascript - js 如何解析json成对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆