gpt4 book ai didi

javascript三元运算符计算字符串中的字符数

转载 作者:行者123 更新时间:2023-12-02 15:00:39 24 4
gpt4 key购买 nike

我最近遇到了这个 JavaScript 函数来计算某个字符在字符串中出现的次数。我可以看到它使用 .replace() 方法替换任何非空白的正则表达式,但我不太明白它被替换为什么。

function Char_Counts(str1) {
var uchars = {};
str1.replace(/\S/g, function(l) {
uchars[l] = (isNaN(uchars[l]) ? 1 : uchars[l] + 1);
});
return uchars;
}
console.log(Char_Counts("This is a sample string"));

任何人都可以解释一下传递给未命名函数的参数“l”是什么以及三元运算符内部到底发生了什么,我设法达到与此相同的效果,但使用嵌套 for 循环,但我可以甚至不知道这是如何迭代字符串字符的。这是控制台中的输出,我只是想确切地了解发生了什么。

Object { T: 1, h: 1, i: 3, s: 4, a: 2, m: 1, p: 1, l: 1, e: 1, t: 1, 3 more… }

最佳答案

这样做很不寻常。其实这种模式用的比较多。它获取 uchars[l]0 的真值并加一。

uchars[l] = (uchars[l] || 0) + 1;

关于javascript三元运算符计算字符串中的字符数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35452911/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com