JavaScript计算字符长度,区分汉字,汉字占两个字节

你可以使用以下JavaScript代码计算字符串的长度,其中中文字符占两个字符:

function calculateStringLength(str) {
    let length = 0;

    for (let i = 0; i < str.length; i++) {
        // 使用正则表达式判断是否是中文字符
        const char = str.charAt(i);
        const isChinese = /^[\u4e00-\u9fa5]$/.test(char);

        // 根据中文字符与其他字符的情况,分别计算长度
        length += isChinese ? 2 : 1;
    }

    return length;
}

// 示例用法
const inputString = "Hello你好";
const result = calculateStringLength(inputString);

console.log(`字符串 "${inputString}" 的长度是 ${result} 个字符。`);

上述代码定义了一个名为 calculateStringLength 的函数,该函数接收一个字符串作为参数,并返回该字符串的长度。在函数中,通过遍历字符串的每个字符,使用正则表达式检测是否是中文字符,并根据中文字符与其他字符的情况分别计算长度。最后,通过示例用法演示了如何调用该函数来计算字符串的长度。

这里使用的正则表达式 /^[\u4e00-\u9fa5]$/ 是用来判断是否是中文字符的简单示例,实际中你可能需要根据具体需求更完整的中文字符判断规则。

本文主体由chatgpt生成,个人对部分内容进行调整

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注