Javascript 如果字符串与属性名称相同,我可以将它们关联起来并相应地应用它们吗

Javascript 如果字符串与属性名称相同,我可以将它们关联起来并相应地应用它们吗,javascript,Javascript,假设我有一根巨大的绳子,里面有很多狗。我正在考虑在every“”处使用.split,并编写一个循环,检查每个名称是否与相同的属性名匹配。我想用最小的if语句和赋值来实现这一点,考虑到它是一个非常大的字符串,有许多类型的狗。所以现在在我把每只狗分开之后。我不想为每只狗写一个if语句,有没有办法解决这个问题?因为标记是=到字符串的,所以我可以自动使它进入其中吗 const occurrences = function(str){ str.split(" ") for(var i=0, c=

假设我有一根巨大的绳子,里面有很多狗。我正在考虑在every“”处使用.split,并编写一个循环,检查每个名称是否与相同的属性名匹配。我想用最小的if语句和赋值来实现这一点,考虑到它是一个非常大的字符串,有许多类型的狗。所以现在在我把每只狗分开之后。我不想为每只狗写一个if语句,有没有办法解决这个问题?因为标记是=到字符串的,所以我可以自动使它进入其中吗





const occurrences = function(str){
str.split(" ")

for(var i=0, c=0; i > str.length; i++){str.split(" ")
    if str[i]==="pug"
}

 let dogs= {[ "weiner":,
        "pug": ,
        "daschhound":,
        "dog":,
});

return dogs}

const myDogs= occurrences("dog dog dog dog dog dog dog dog"
"dog dog dog dog dog dog dog pug")

returns {"pug":"pug"
"dog": "dog" "dog""dog" "dog" "dog" "dog" "dog" "dog" 
"daschhound":
}

//想象一下,一个由200个不同品种组成的庞大列表,是否有办法将它们分配给同一名称的财产。

不太清楚您的要求,但请检查这是否有帮助

const occurences = str => {
    let dogs = {};
    str.split(' ').forEach(word => dogs[word] ? dogs[word] += ` ${word}` : dogs[word] = word);
    return dogs;
}

const str = 'dog dog dog pug jon';
console.log(occurences(str)); // prints {dog: "dog dog dog", pug: "pug", jon: "jon"}

你能给出一个输入的具体例子和它的预期输出吗?你能给出
发生('dog-dog-pug-pug-jon')的输出吗?
你的问题可能重复的地方一点也不清楚。请举例说明。