javascript 遍历json对象检查是否不存在某些属性/字段

javascript函数中,如果参数很多,可以设置一个json参数,将一些可选参数项放到里面去。

这样就有一个问题,既然是可选参数,那么调用的时候,既可以指定,也可以不指定,怎么知道有哪些属性并没有指定?如果不指定,该如何处理?

我的想法是,这个json参数有一个默认值,调用方指定的属性,当然采用调用方的指定;否则采用默认值。具体实现就是将传过来的json参数与默认json参数做个属性一一对照,有则用之,无则补之。

上代码:

function (code, url,option) {//code,url是必选参数;option是可选参数
	let _default = {//可选参数的默认值
		name:"未命名",
		width: 500,
		height:400,
		maxmin:true,
	};
	if(typeof option == 'undefined'){//如果option根本没传,简单了,直接全部默认
		option = _default;
	} else {
		for (var k in _default){//否则一一对照
			if(typeof option[k] == 'undefined'){//这里k拿到的是json的属性。
			//如果_default是数组,拿到的就是下标;js中,数组与json的界线有时真的很模糊。
			//I like it
				option[k] = _default[k];
			}
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值