js对象判断key是否存在,javascript中如何判断key是否存在?

js对象判断key是否存在,javascript中如何判断key是否存在?

假设有一个 obj 和一个 key

var obj = {}

var key = 'exist'

最简单的判断方法是直接取值 !obj[key]

if (!obj[key]) console.log('not exist')

> not exist

这种方法如果碰到是零或null或也会成立,如果要排除只需要 typeof 属性

if (typeof obj[key] == 'undefined') console.log('not exist')

> not exist

此外也可以用 Object.的 hasOwnProperty 属性

if (!Object.hasOwnProperty(obj[key])) console.log('not exist')

> not exist

js对象判断key是否存在,javascript中如何判断key是否存在?

java.util.Map对象在所有key前加统一加一个标识,有什么好方法?

java.util.Map对象中包含Map和List,怎么把所有的key前加统一标识,目前是用了正则表达式,还有其他好方法吗

举个例子

新方法:

public static JSONObject transObject(JSONObject o1,String prefix){

if(o1 == null){

return null;

}

JSONObject o2=new JSONObject();

o1.forEach((key, value) -> {

if(value.getClass().toString().endsWith("JSONObject")){

o2.put(prefix+":"+key, transObject((JSONObject)value,prefix));

}else if(value.getClass().toString().endsWith("JSONArray")){

o2.put(prefix+":"+key, transArray(o1.getJSONArray(key),prefix));

}else{

o2.put(prefix+":"+key, value);

}

});

return o2;

}

public static JSONArray transArray(JSONArray o1,String prefix){

if(o1 == null){

return null;

}

JSONArray o2 = new JSONArray();

for (int i = 0; i < o1.size(); i++) {

Object jArray=o1.getJSONObject(i);

if(jArray.getClass().toString().endsWith("JSONObject")){

o2.add(transObject((JSONObject)jArray,prefix));

}else if(jArray.getClass().toString().endsWith("JSONArray")){

o2.add(transArray((JSONArray)jArray,prefix));

}

}

return o2;

}

目前所用方法

.replaceAll("(["])([^:"' ]*["][s]?:)", "$1"+prefix+":"+"$2")

原文

{

"CUST_ID": "200004343813",

"TRADE_SOURCE": [{

"WORK_ID": "ACCEPT_GRADE",

"ACCEPT_TYPE": "1"

}, {

"WORK_ID": "BOOK_FLAG",

"ACCEPT_TYPE": "0"

}, {

"WORK_ID": "PRE_ACCEPT_TAG",

"ACCEPT_TYPE": "0"

}

],

"TRADE_JUDGE_OWE_TAG": "2"

}

转换后

{

"a:CUST_ID": "200004343813",

"a:TRADE_SOURCE": [{

"a:WORK_ID": "ACCEPT_GRADE",

"a:ACCEPT_TYPE": "1"

},

{

"a:WORK_ID": "BOOK_FLAG",

"a:ACCEPT_TYPE": "0"

},

{

"a:WORK_ID": "PRE_ACCEPT_TAG",

"a:ACCEPT_TYPE": "0"

}],

"a:TRADE_JUDGE_OWE_TAG": "2"

}

java面试题有哪些?

js对象判断key是否存在,javascript中如何判断key是否存在?

肝了一个月的面试题终于来啦,大家开心不。

2020年最新Java面试题整理,全网最全一份,包含各个技术栈,Java基础,Java集合,多线程,Java异常,spring,spring MVC,spring boot,spring cloud,netty,dubbo,activemq,Java web,jvm,kafka,MongoDB,mybatis,MySQL,Nginx,rabbitmq,Redis,Tomcat,zookeeper,设计模式,数据结构,算法,分布式,限流,降级,cap原理等等知识点

话不多说,直接上图

js对象判断key是否存在,javascript中如何判断key是否存在?js对象判断key是否存在,javascript中如何判断key是否存在?

总共80多个PDF

【BAT必备】计算机网络面试题:

链接:https://pan.baidu.com/s/1hFggmtdL1ZmE4utBlo8S1g 提取码:qfkh

【BAT必备】设计模式面试题

链接:https://pan.baidu.com/s/1eXJveIVvQe-m3MdvLcT-fQ 提取码:j0kx

【BAT必备】数据结构算法面试题:

链接:https://pan.baidu.com/s/1daFN9jY03fXsqwc9LeKi2w 提取码:5ab7

【BAT必备】多线程面试题:

链接:https://pan.baidu.com/s/1GdvsNESoHPBjWKN2h-iK7Q 提取码:cqib

【BAT必备】并发编程锁面试题:

链接:https://pan.baidu.com/s/1hXPPtMY2dvz-g7QcSTc3PA 提取码:zhmy

【BAT必备】tomcat面试题:

链接:https://pan.baidu.com/s/1qPZXx4lmLynmaF0XjRTzpQ 提取码:5m16

【BAT必备】zookeeper面试题:

链接:https://pan.baidu.com/s/1EhOee9e1Qe-Q6RC8KlthxA 提取码:p2am

【BAT必备】spring 全家桶面试题:

链接:https://pan.baidu.com/s/1DXGO-N5P6QIGKLZ8LIVOuQ 提取码:m9v7

【BAT必备】rocketMq面试题:

链接:https://pan.baidu.com/s/1TEF3yUR4OOaIpj-4ud_79A 提取码:3g3d

【BAT必备】redis面试题:

链接:https://pan.baidu.com/s/1qlanxWBfwvKUObnHulCQiA 提取码:rjo7

【BAT必备】rabbitMq面试题:

链接:https://pan.baidu.com/s/1ywLiq3IUJVyZosPLNrmyTA 提取码:0td4

【BAT必备】netty面试题:

链接:https://pan.baidu.com/s/1Pbv4aelqOt1dUPA2SwEB_Q 提取码:2w1e

【BAT必备】Nginx面试题:

链接:https://pan.baidu.com/s/1r8YNyOz0N6MJ9F0045lEZw 提取码:49tl

【BAT必备】MySQL面试题:

链接:https://pan.baidu.com/s/1GeX6Fs4nNi6fTUHKxJ2SZw 提取码:8pow

【BAT必备】mybatis面试题:

链接:https://pan.baidu.com/s/1xOYiaiQ2JpPt2jb6GdWjaA 提取码:aqd3

【BAT必备】MongoDB面试题:

链接:https://pan.baidu.com/s/1QTVx1TF8tDn6LUJr7wdfOQ 提取码:j1qt

【BAT必备】Linux面试题:

链接:https://pan.baidu.com/s/1veZ3dBJmz1PduCE5tl-e1A 提取码:txpf

【BAT必备】kafka面试题:

链接:https://pan.baidu.com/s/1SWhiBCswleYGsDupSGzE6g 提取码:o1gv

【BAT必备】jvm面试题:

链接:https://pan.baidu.com/s/1xi-QLq_I75kha439EGqELw 提取码:kxde

【BAT必备】java web面试题:

链接:https://pan.baidu.com/s/1r3Bupn9qhJbw5ebR_6h94A 提取码:qba4

【BAT必备】Java基础面试题:

链接:https://pan.baidu.com/s/1J40nYKIoV_VMCumoRpIyhQ 提取码:5xo7

【BAT必备】dubbo面试题:

链接:https://pan.baidu.com/s/10flnh7Tb0Oxd3yZPQOnjsA 提取码:5gc9

【BAT必备】activeMQ面试题:

链接:https://pan.baidu.com/s/1igNB64dpMCjCQkRzvqCXpQ 提取码:006a

【BAT必备】分布式相关面试题大全面试题:

链接:https://pan.baidu.com/s/1ZcpJDh07B2NPAL4_4VC6jQ 提取码:w4mw

【BAT必备】java面试题大全:

链接:https://pan.baidu.com/s/11jw0Ua4CZiI8-S6EadM_iQ 提取码:epmp

【BAT必备】Java面试汇总

链接:https://pan.baidu.com/s/1vG9_cNoiYBW5TY32S4wGnQ 提取码:k087

【BAT必备】2020年多家公司整理的350道Java面试题手册

链接:https://pan.baidu.com/s/1FEGQVTgiyKG0kCasYn-n2g 提取码:f7y1

【BAT必备】Java全部核心知识点整理

链接:https://pan.baidu.com/s/1StG-ib70TDAE1Hb4NVLQRQ 提取码:5rp1

整理这些非常辛苦,大家 点个赞 在走吧

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 xxx@163.com 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论