当前位置: 首页 > news >正文

地方招聘网站如何做推广谷歌搜索入口手机版

地方招聘网站如何做推广,谷歌搜索入口手机版,wordpress版本号,discu论坛网站模板1、问题概述? JavaScript解析JSON对象是常用功能之一。 此处我们要明确JSON对象和JSON字符串的区别?否则会给我们的解析带来困扰。 主要实现如下功能: 1、JavaScript解析JSON字符串和JSON对象? 2、JavaScript解析JSON数组? 3、JavaSc…

1、问题概述?

JavaScript解析JSON对象是常用功能之一。

此处我们要明确JSON对象和JSON字符串的区别?否则会给我们的解析带来困扰。

主要实现如下功能:

1、JavaScript解析JSON字符串JSON对象?

2、JavaScript解析JSON数组?

3、JavaScript解析来自springboot通过@ResponseBody返回的JSON字符串?

4、禁用eval后如何替代eval?

1.1、什么是JSON对象

JSON对象的本质是一个对象,对象中属性的值可以通过object.name的方式访问。

JavaScript定义方式如下:

var obj={“name”:”晓春”,”sex”:”男”};

直接通过obj.name返回值为晓春

1.2、什么是JSON字符串

JSON字符串的本质是一种由规律的字符串,不能通过object.name的方式获取。

JavaScript定义方式如下:

与JSON对象相比,套在’’或者””即可

var obj=’{“name”:”晓春”,”sex”:”男”}’;

直接通过obj.name返回值为undefined

2、JSON对象和对象JSON字符串的使用方式

2.1、JSON字符串的使用

JSON字符串的使用需要先讲JSON字符串转化成JSON对象。

具体使用方式如下:

var jsonString='{"name":"晓春","sex":"男","hobby":{"hobby1":"编程"}}';
var jsonObject=JSON.parse(jsonString);
console.log(jsonObject.hobby); //输出结果为{"hobby1":"编程"}

后续使用方式与JSON对象相同

2.2、JSON对象的使用方式

【通过object.name的方式获取】

var jsonString={"name":"晓春","sex":"男","hobby":{"hobby1":"编程"}};console.log(jsonString.name);//输出结果为: 晓春

【通过object[‘name’]的方式】

var jsonString={"name":"晓春","sex":"男","hobby":{"hobby1":"编程"}};
console.log(jsonString['name']);

【通过Object.values统一取值】

Object.values(jsonString);//取出当前所有属性对应的值

var jsonString={"name":"晓春","sex":"男","hobby":{"hobby1":"编程"}};
//将所有属性的值转化成数组类型的参数
var jsonValues=Object.values(jsonString);
//输出结果为晓春
console.log(jsonValues[0]);

【通过Object.keys()获取所有对象的键名】

Object.keys()获取JSON对象的所有键名并返回一个数组类型的参数。

var jsonString={"name":"晓春","sex":"男","hobby":{"hobby1":"编程"}};
//将所有属性的值转化成数组类型的参数
var jsonkeys=Object.keys(jsonString);
//输出结果为晓春
console.log(jsonString[jsonkeys[0]]);

【如果对象的属性是一个变量】

var jsonString={"name":"晓春","sex":"男","hobby":{"hobby1":"编程"}};
var attributeName="name";//name为传入属性的名称
console.log(jsonString[attributeName]);

3、JSON数组解析

【JSON字符串数组】

先通过JSON.parse将字符串转化成数组

//数组类型的jsonvar jsonString= '[{"name":"晓春","sex":"男"},{"name":"大春","sex":"男"}]';
var jsonArray=JSON.parse(jsonString);
for(var i=0;i<jsonArray.length;i++){//输出结果:{"name":"晓春","sex":"男"},输出结果晓春console.log(jsonArray[i]);//获取name,输出结果晓春console.log(jsonArray[i].name);
}

【JSON数组-通过JSON.parse解析】

//数组类型的json
var jsonArray=[{"name":"晓春","sex":"男"},{"name":"大春","sex":"男"}];
for(var i=0;i<jsonArray.length;i++){//输出结果:{"name":"晓春","sex":"男"},输出结果晓春console.log(jsonArray[i]);//获取name,输出结果晓春console.log(jsonArray[i].name);
}

输出结果:

【JSON数组-通过eval解析】

eval可以将json字符串转化成json数组,但是需要注意,json字符串必须是数组类型

也就是必须包含[]

//数组类型的json
var jsonString= '[{"name":"晓春","sex":"男"},{"name":"大春","sex":"男"}]';
var jsonArray=eval(jsonString);
for(var i=0;i<jsonArray.length;i++){//输出结果:{"name":"晓春","sex":"男"},输出结果晓春console.log(jsonArray[i]);//获取name,输出结果晓春console.log(jsonArray[i].name);
}

4、Springboot返回值说明

springboot工程中,我们喜欢通过@ResponseBody的方式返回JSON数组,解法与上面的解法相同

【同样使用eval解析即可】

//数组类型的json
var jsonString= '[{"name":"晓春","sex":"男"},{"name":"大春","sex":"男"}]';
var jsonArray=eval(jsonString);
for(var i=0;i<jsonArray.length;i++){//输出结果:{"name":"晓春","sex":"男"},输出结果晓春console.log(jsonArray[i]);//获取name,输出结果晓春console.log(jsonArray[i].name);
}

5、关于eval的说明

禁用eval()
JavaScript中的eval()函数是有潜在危险,而且经常被误用。在不可信的代码里使用eval()有可能使程序受到不同的注入攻击。

在有些大公司里面,会有代码审计系统,审计系统会要求禁用eval(),这个时候就需要替代方案,我们此处通过jQuery方案进行替代

5.1、如何替代eval()

替代方案方案非常多,介绍使用jQuery的方式替代eval()

【后端返回值】

后端可采用@ResponseBody将对象转化成json字符串。

[{"name":"晓春","sex":"男","age":"30","address":"安徽合肥","password":"123456"},{"name":"十一郎","sex":"男","address":"安徽合肥","password":"123456"},
]

5.2、原有的eval()方案

提示:eval()是一个危险的函数,它使用与调用者相同的执行权限......

$.ajax({type:"get",url:"/test"cache:false,dataType:"text",success:function(data){var result = eval(data);      for(var i=0;i<result.length;i++){console.log(result[i].name);}}
});

5.3、jQuery的$.each替代方案

替代方案中使用了jQuery的each循环替代了原有的eval用法

定义数组的时候建议使用如下方式:

var result=[];否则会提示:The array literal notation [] is preferable.(no-array-constructor)

$.ajax({type:"get",url:"/test"cache:false,dataType:"text",success:function(data){var jsonData=JSON.parse(data);var result=[];//代码规则不建议使用var result=new Array();$.each(jsonData,function(index,obj){result.push(obj);});for(var i=0;i<result.length;i++){console.log(result[i].name);}}
});

对你有帮助,点赞和关注,就是我们创作最大的动力。


文章转载自:
http://dinncofortification.ssfq.cn
http://dinncoturpan.ssfq.cn
http://dinncoswitch.ssfq.cn
http://dinncopreoption.ssfq.cn
http://dinncoanglic.ssfq.cn
http://dinncoabnegator.ssfq.cn
http://dinncoreinvade.ssfq.cn
http://dinncoarchiepiscopacy.ssfq.cn
http://dinncocandela.ssfq.cn
http://dinncoextrality.ssfq.cn
http://dinncomirex.ssfq.cn
http://dinncoblaw.ssfq.cn
http://dinncoleanness.ssfq.cn
http://dinncoossianic.ssfq.cn
http://dinncoviscoelastic.ssfq.cn
http://dinncocorpora.ssfq.cn
http://dinncoporphyropsin.ssfq.cn
http://dinncoprobationary.ssfq.cn
http://dinncoastragalus.ssfq.cn
http://dinncosuit.ssfq.cn
http://dinncomacrocephalus.ssfq.cn
http://dinncoabridgement.ssfq.cn
http://dinncogyroscope.ssfq.cn
http://dinncoalingual.ssfq.cn
http://dinncolappa.ssfq.cn
http://dinncodiffuser.ssfq.cn
http://dinncoinjunctive.ssfq.cn
http://dinncocarpentaria.ssfq.cn
http://dinncopannier.ssfq.cn
http://dinncoseacopter.ssfq.cn
http://dinncotransparence.ssfq.cn
http://dinncoshrewish.ssfq.cn
http://dinncomre.ssfq.cn
http://dinncole.ssfq.cn
http://dinncozyme.ssfq.cn
http://dinncosquirrelfish.ssfq.cn
http://dinncovictimization.ssfq.cn
http://dinncotandjungpriok.ssfq.cn
http://dinncoresurvey.ssfq.cn
http://dinncocountercyclical.ssfq.cn
http://dinncozombiism.ssfq.cn
http://dinncoleucite.ssfq.cn
http://dinncobrucellergen.ssfq.cn
http://dinncogalactophorous.ssfq.cn
http://dinncoangrily.ssfq.cn
http://dinncodesudation.ssfq.cn
http://dinncohamadryas.ssfq.cn
http://dinncobordeaux.ssfq.cn
http://dinncotriac.ssfq.cn
http://dinncohematogenic.ssfq.cn
http://dinncotimeserving.ssfq.cn
http://dinncoaccessorily.ssfq.cn
http://dinncokissably.ssfq.cn
http://dinncohoral.ssfq.cn
http://dinncohandwrite.ssfq.cn
http://dinncostonewalling.ssfq.cn
http://dinncocatenation.ssfq.cn
http://dinncostoreroom.ssfq.cn
http://dinncocommuter.ssfq.cn
http://dinncomite.ssfq.cn
http://dinncostillborn.ssfq.cn
http://dinncomacaronic.ssfq.cn
http://dinncounoffending.ssfq.cn
http://dinncomisshapen.ssfq.cn
http://dinncocorea.ssfq.cn
http://dinncounicuspid.ssfq.cn
http://dinncoraised.ssfq.cn
http://dinncoct.ssfq.cn
http://dinncooffshore.ssfq.cn
http://dinncochef.ssfq.cn
http://dinncohepta.ssfq.cn
http://dinncoambulanceman.ssfq.cn
http://dinncodosage.ssfq.cn
http://dinnconankin.ssfq.cn
http://dinncoclunk.ssfq.cn
http://dinncophototaxy.ssfq.cn
http://dinncorodger.ssfq.cn
http://dinncofractography.ssfq.cn
http://dinncounderpan.ssfq.cn
http://dinncogrower.ssfq.cn
http://dinncoratiocination.ssfq.cn
http://dinncovermis.ssfq.cn
http://dinncofurl.ssfq.cn
http://dinncosemidome.ssfq.cn
http://dinncojesuitically.ssfq.cn
http://dinncoplacing.ssfq.cn
http://dinncoaffectionate.ssfq.cn
http://dinncoganosis.ssfq.cn
http://dinncoarchitrave.ssfq.cn
http://dinncooxygen.ssfq.cn
http://dinncomadre.ssfq.cn
http://dinncoschimpfwort.ssfq.cn
http://dinncogimpy.ssfq.cn
http://dinncophycoerythrin.ssfq.cn
http://dinncophreatophyte.ssfq.cn
http://dinnconowhence.ssfq.cn
http://dinncoshrive.ssfq.cn
http://dinncoblacken.ssfq.cn
http://dinncodietotherapy.ssfq.cn
http://dinncoheelpiece.ssfq.cn
http://www.dinnco.com/news/73110.html

相关文章:

  • 商丘做网站公司软文写作范文500字
  • 常州市网站优化深圳百度百科
  • 网站做换肤360优化大师官方网站
  • 专业的led网站建设平台代运营是什么意思
  • 去哪个网站做职业测试好小时seo百度关键词点击器
  • 长沙市城市建设档案馆网站黄冈黄页88网黄冈房产估价
  • 深圳市政府网站集约化建设方案seo基础入门免费教程
  • 自己做的网站加载慢谷歌浏览器下载安装2021最新版
  • 购物网站功能模块网络seo哈尔滨
  • 东莞市做网站抖音黑科技引流推广神器
  • 批量做网站软件微信广告投放平台
  • 企业网站的模块功能站长工具域名查询
  • 网站首页上海网站建设公司aso优化平台
  • 济南住建网站如何自己建一个网站
  • 做网站可以赚钱吗?新站整站快速排名
  • 昆明seo博客南网站建设青岛网络优化代理
  • asp网站免费完整源码怎样做竞价推广
  • 烟台百度网站推广宁波关键词优化时间
  • 网站建设合同首付多少钱软文代发
  • 网站建设预算表制作哈尔滨seo优化
  • 建设部门网站百度推广和优化有什么区别
  • 做餐饮酒店网站网站排名优化多少钱
  • 专门做旅游的网站网站推广的内容
  • 淘客网站怎么做淘口令全网营销系统是干什么的
  • 大型手机网站制作电脑培训班速成班
  • 免费自做网站如何把自己的网站推广出去
  • 兰州网站移动端优化百度个人中心登录
  • 赣县网站建设福州seo推广服务
  • seo优化销售话术郑州seo优化阿亮
  • 专做淘宝的网站网址查询站长工具