我不知道这是一个错误还是什么,但我根本无法删除 IDE(Webstorm)中的 TS 错误。
Array.prototype.at()当我在任何类型的数组上使用时都会出现该错误。
tsconfig.json:
"lib": [
"DOM",
"ES2020",
"ESNext"
],
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用,我还添加了 ES2021 - ES2015 但错误仍然存在。当我编译它时它确实有效,但我只是在 IDE 中收到错误。
有人知道如何解决这个问题吗?
"lib": [
"DOM",
"ES2020",
"ESNext"
],
Run Code Online (Sandbox Code Playgroud)
根据我过去的经验和 stackoverflow,我了解到 String.ToLower() 的性能很差。现在我遇到以下问题,当特定单词出现在巨大列表中时,我需要过滤掉或执行特定操作。
旧方法,我想修复:
if (input.Any(i => i.ToLower() == "alle" || i.ToLower() == "all" || i.ToLower() == "none")
{
// do something
}
Run Code Online (Sandbox Code Playgroud)
我正在考虑使用哈希集,但我质疑性能以及它如何处理区分大小写,我基本上不关心区分大小写。使用哈希集对我来说有意义吗?
我目前的建议作为解决方案:
var unwantedInputsSet = new HashSet<string> {"alle", "all", "none"};
if (input.Any(i => i => unwantedInputsSet.Contains(i)))
{
// do something
}
Run Code Online (Sandbox Code Playgroud)
有没有更好的替代方案。您有什么想法如何更好地解决这个问题吗?