Javascript 将动态字符串传递给对象

Javascript 将动态字符串传递给对象,javascript,Javascript,是否可以以某种方式将参数传递给对象 大概 const messages = (str1, str2){ 1: `${str1} is not the same as ${str2}`, 2: 'message2', 3: 'message3', 4: 'message4', 5: 'message5', 6: 'message6', } const validateInput = ({ str1 = '', str2 = '' }) =>

是否可以以某种方式将参数传递给对象

大概

const messages = (str1, str2){
    1: `${str1} is not the same as ${str2}`,
    2: 'message2',
    3: 'message3',
    4: 'message4',
    5: 'message5',
    6: 'message6',
}

const validateInput = ({ str1 = '', str2 = '' }) => {
    if (str1 !== str2) {
        console.log(messages[1](str1, str2))
    }
}

validateInput('a', 'b')
const message = (str1, str2) => `${str1} is not the same as ${str2}`
我不是在找这样的东西

const messages = (str1, str2){
    1: `${str1} is not the same as ${str2}`,
    2: 'message2',
    3: 'message3',
    4: 'message4',
    5: 'message5',
    6: 'message6',
}

const validateInput = ({ str1 = '', str2 = '' }) => {
    if (str1 !== str2) {
        console.log(messages[1](str1, str2))
    }
}

validateInput('a', 'b')
const message = (str1, str2) => `${str1} is not the same as ${str2}`

我很想知道是否可以专门用一个对象来实现这一点。

您可以为所有消息获取一个对象,并在函数中返回带有消息的字符串,具体取决于传递的字符串

const消息={
1:(str1,str2)=>“${str1}与${str2}”不同,
2:(str1,str2)=>“消息2”,
3:(str1,str2)=>“消息3”,
4:(str1,str2)=>“消息4”,
5:(str1,str2)=>“消息5”,
6:(str1,str2)=>“消息6”,
};
常量validateInput=(str1='',str2='')=>{
如果(str1!==str2){
console.log(消息[1](str1,str2))
}
}
验证输入(“a”、“b”)