一、检查传参
- 是否为空
- 类型是否为object
- 初始化为对象{}
options=options!=null && typeof (options) == "object" ?options:{}
二、设置默认值
1.检查参数中是否有默认对象中的属性
2.检查参数中设置的值是否符合默认对象中对属性的要求。检查参数值类型
for(const key in defaultOptions){
const defaultValue=defaultOptions[key];
if(options[key] == undefined || options[key].constructor !==defaultValue.constructor){
options[key]=defaultValue;
}
}
知识点
1.construtor属性返回对象的构造函数方法引用
比如
2. js操作符
3. 等于和严格等于的区别