87,904
社区成员
发帖
与我相关
我的任务
分享
String.prototype.toJson=function(){
if(!this||this=="")
return null;
return (new Function("return "+this))();
}
Function可以表示开发者定义的任何函数,是javascript内置类型.用Function直接创建函数的语法如下:
var function_name=new Function(argument1,argument2,......,argumentN,function_body);
示例:
var sayHi =new Function("sname","sMessage","alert(\"Hello\"+sname+\",\"+sMessage+\"!\");");
function_body 是字符串形式,由解释器解释
sayHi("这是第一个参数sname","这是第二个参数sMessage");
<script>
String.prototype.toJson=function(){
if(!this||this=="")
return null;
return (new Function("return "+this))();
//这里可以看作new Function("return {a:'aaa',b:'bbb'}"))(),结果是什么,应该一目了然了吧
}
var o = "{a:'aaa',b:'bbb'}").toJson();
alert(o.a);//aaa
</script>