如何使用 Javascript 在客户端的脚本数组中查找关键字
How to find keywords in arrays of scripts using Javascript hopefully client-side
我正面临这个问题,但我不知道解决它的正确方法。我有一组关键字,例如:
keywordArray = ["Javascript", "Python", "R", "Data Science", "Front-end", "Amazon Web Services", "Amazon DynamoDB"]
现在我需要在字符串数组中找到一次出现,return 那次出现。例如:
stringArray = ["I love learning JavaScript but I would also like to learn Data Science using R", "I don't buy at Amazon", "RnB Music"
]
在这个例子中,我需要 return 一个包含 Javascript
、Data Science
和 R
的数组。如果我从 stringArray 中删除第一个字符串,那么它不应该 return R
(我认为它可能会在“RnB Music”中找到)。
我想在客户端执行此操作,但我尝试了 indexOf()
、contains()
等,但无法正常工作。
那么,我可以在客户端进行吗?如果答案是肯定的,那我该怎么做?如果没有,那么是否可以在 NodeJS 上进行?我应该为此使用云服务吗?
我目前正在使用 Angular、Express、NodeJS 和 MongoDB Atlas,它们具有全文搜索服务并且运行良好。我可能会尝试在那里做,但我不知道它是否具有成本效益。
好的,你有了第一个数组:
const keywordArray = ["JavaScript", "Python", " R", "Data Science", "Front-end", "Amazon Web Services", "Amazon DynamoDB"];
第二个是字符串列表
const stringArray = ["I love learning JavaScript but I would also like to learn Data Science using R", "I don't buy at Amazon", "RnB Music"];
因此您需要遍历两个数组并使用 includes()
方法进行检查。
像这样:
const keywordArray = ["JavaScript", "Python", " R", "Data Science", "Front-end", "Amazon Web Services", "Amazon DynamoDB"];
const stringArray = ["I love learning JavaScript but I would also like to learn Data Science using R", "I don't buy at Amazon", "RnB Music"];
const result_array = [];
for (let i = 0; i < stringArray.length; i++)
{
for (let d = 0; d < keywordArray.length; d++)
{
if (stringArray[i].includes(keywordArray[d]))
{
result_array.push(keywordArray[d]);
}
}
}
console.log(result_array);
我正面临这个问题,但我不知道解决它的正确方法。我有一组关键字,例如:
keywordArray = ["Javascript", "Python", "R", "Data Science", "Front-end", "Amazon Web Services", "Amazon DynamoDB"]
现在我需要在字符串数组中找到一次出现,return 那次出现。例如:
stringArray = ["I love learning JavaScript but I would also like to learn Data Science using R", "I don't buy at Amazon", "RnB Music"
]
在这个例子中,我需要 return 一个包含 Javascript
、Data Science
和 R
的数组。如果我从 stringArray 中删除第一个字符串,那么它不应该 return R
(我认为它可能会在“RnB Music”中找到)。
我想在客户端执行此操作,但我尝试了 indexOf()
、contains()
等,但无法正常工作。
那么,我可以在客户端进行吗?如果答案是肯定的,那我该怎么做?如果没有,那么是否可以在 NodeJS 上进行?我应该为此使用云服务吗?
我目前正在使用 Angular、Express、NodeJS 和 MongoDB Atlas,它们具有全文搜索服务并且运行良好。我可能会尝试在那里做,但我不知道它是否具有成本效益。
好的,你有了第一个数组:
const keywordArray = ["JavaScript", "Python", " R", "Data Science", "Front-end", "Amazon Web Services", "Amazon DynamoDB"];
第二个是字符串列表
const stringArray = ["I love learning JavaScript but I would also like to learn Data Science using R", "I don't buy at Amazon", "RnB Music"];
因此您需要遍历两个数组并使用 includes()
方法进行检查。
像这样:
const keywordArray = ["JavaScript", "Python", " R", "Data Science", "Front-end", "Amazon Web Services", "Amazon DynamoDB"];
const stringArray = ["I love learning JavaScript but I would also like to learn Data Science using R", "I don't buy at Amazon", "RnB Music"];
const result_array = [];
for (let i = 0; i < stringArray.length; i++)
{
for (let d = 0; d < keywordArray.length; d++)
{
if (stringArray[i].includes(keywordArray[d]))
{
result_array.push(keywordArray[d]);
}
}
}
console.log(result_array);