1

Является ли это хорошая идея/практика, чтобы сделать следующее:Аргументом различных типов данных

export const checkAndUpdateCredit = (total, addback = false) => { 
// here, addback can be an obj or boolean 
let value = total - addback.value 
}; 

В соответствии с замечанием, если аргумент addback не передается, то по умолчанию false, еще объект должен быть передан. Здесь один параметр может быть либо object, либо boolean. Является ли это хорошей практикой/приемлемой?

+2

И что точка вычитания числа и логическое значение? –

+0

как насчет 'addback.value'? если 'addback' является' false'? вы не справились с этим –

+0

, это точка, номер - boolean = number. – Kayote

ответ

1

Вы можете использовать значение по умолчанию внутри addback

export const checkAndUpdateCredit = (total, addback = { value: 0 }) => { 
//             ^^^^^^^^^^^^ 
+0

абсолютно и я думаю, что это более разумно и менее запутанно, чем мое. – Kayote

0

Вы также можете проверить на второй argument существования.

Примечание: Второй аргумент должен быть объект с ключом value

const checkAndUpdateCredit = (total, addback) => { 
 
// here, addback can be an obj or boolean 
 
let value = addback? total - addback.value : total; 
 
    console.log(value); 
 
}; 
 

 
checkAndUpdateCredit(10); 
 

 
checkAndUpdateCredit(10, {value: 2});

Смежные вопросы