在javascript中设置对象的默认值

在javascript中设置对象的默认值,javascript,ecmascript-6,Javascript,Ecmascript 6,我有一个名为addAlert的函数,该函数接受两个参数 此函数的第一个参数是字符串,第二个参数是对象。对象有三个属性状态,位置,和对齐 当我没有设置此参数的任何属性时,我想设置一个默认值 addAlert(stringValue,valueObject) { //Set the default values for the valueObject } 您可以按如下方式设置参数默认值: addAlert(stringValue = 'default string',valueObject

我有一个名为
addAlert
的函数,该函数接受两个参数

此函数的第一个参数是字符串,第二个参数是对象。对象有三个属性
状态
位置
,和
对齐


当我没有设置此参数的任何属性时,我想设置一个默认值

addAlert(stringValue,valueObject) {
    //Set the default values for the valueObject
}

您可以按如下方式设置参数默认值:

addAlert(stringValue = 'default string',valueObject = {}) {
    //Set the default values for the valueObject
}

有关更多信息,请访问

您可以创建具有默认属性的默认对象,并使用如下方式:

函数addAlert(stringValue、valueObject){
常量defaultObj={
状态:“默认状态”,
职位:“默认职位”,
对齐:“默认对齐”
};
valueObject=Object.assign({},defaultObj,valueObject)
console.log(valueObject)
}
addAlert(“”,{status:“status”})
addAlert(“”,{位置:“位置”,对齐:“对齐”})
addAlert(“”)//valueObject将是未定义的

.as console wrapper{max height:100%!important;top:0;}
实现这一点的最佳方法是在函数调用中使用默认值:

addAlert(stringValue = 'default',valueObject = 'default') {
    //Set the default values for the valueObject
}
现在,如果要为stringObject.status提供默认值,有两个选项: 检查它们是否未定义,然后设置为默认值:

addAlert(stringValue,valueObject) {
    if (valueObject.status == undefined) {
       valueObject.status = 'default';
    }
}
或者,你将通过三个不同的领域,所有单一的

addAlert(stringValue,valueObject.status, etc..) {
    //Set the default values for the valueObject
}

希望这有帮助!:)

您可以通过以下方式在参数列表中分配默认值

    addAlert = (stringValue="defaultString",valueObject={status:"", position:"", align:""})=> {
        console.log(stringValue, valueObject)
    }
可以使用创建具有默认值的对象:

const默认值={
答:1,,
b:2,
c:3
}
常量obj1={a:11}
常量obj2={a:11,c:33}
常量obj3={a:11,b:22,c:33}
const newObj1=Object.assign({},默认值,obj1);
const newObj2=Object.assign({},默认值,obj2);
const newObj3=Object.assign({},默认值,obj3);
console.log(newObj1);
console.log(newObj2);

console.log(newObj3)
我想为
第二个参数设置一个默认值
然后为第二个参数设置一个默认值。