__GetZoneResult_ = { mts:'1589808', province:'辽宁', catName:'中国移动', telString:'158980

在开发微信小程序时,里面有个练习项目,开发电话归属查询服务。下面是淘宝电话归属查询地址:https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=15898087107
查询结果如下,需要转换成JSON.使用javascript,同时,使用JSON.parse()方法。
其中有个方法,如下:

function strJson(str){

//var json;

return json = (new Function("return" + str))();

}

不知道为什么不能中微信小程序中使用。

__GetZoneResult_ = {
    mts:'1589808',
    province:'辽宁',
    catName:'中国移动',
    telString:'15898087107',
	areaVid:'30498',
	ispVid:'3236139',
	carrier:'辽宁移动'
}

转换步骤如下:

success:function(res){

//将__GetZoneResult_ = 除掉,利用string.split()分组函数

var $res=res.data.split("=")[1];

//使用string.replace将字符串加上双引号,此处注意,要加上双引号,单引号不行效果如下:

 {
    "mts":"1589808",
    "province":"辽宁",
    "catName":"中国移动",
    "telString":"15898087107",
    "areaVid":"30498",
    "ispVid":"3236139",
    "carrier":"辽宁移动"
}

var $result=$res.replace(/(\w+):'([^']*)'/g,"\"$1\":\"$2\"");

//使用JSON.parse就可以转换成JSON

var $resJson=JSON.parse($result);

备注:还有一个“坑”,就是input 的bindinput事件在调试基础库为“2.9.3”不能使用。但在“2.9.2”中没有问题。

 

你可能感兴趣的:(webChat,微信小程序)