推荐答案
使用字符串的 length
属性可以直接获取字符串的长度。
const str = "Hello World"; const length = str.length; console.log(length); // 输出 11
本题详细解读
字符串的 length 属性
JavaScript 中的字符串是基本数据类型,但它也拥有内置的属性和方法。其中,length
属性是一个只读属性,用于返回字符串中字符的数量(即长度)。
语法:
string.length;
示例:
let myString = "JavaScript"; let stringLength = myString.length; // stringLength 的值为 10 console.log(stringLength);
注意事项
空字符串: 空字符串的长度为 0。
const emptyString = ""; console.log(emptyString.length); // 输出 0
空格: 空格也是一个字符,会计算在长度内。
const stringWithSpaces = " hello "; console.log(stringWithSpaces.length); // 输出 9
Unicode 字符: JavaScript 使用 UTF-16 编码,有些 Unicode 字符可能由多个 JavaScript 字符单元组成,此时
length
属性返回的是 UTF-16 编码的字符单元的数量,而不是用户感知的字符数量。例如,一些表情符号(emoji)可能会占用两个字符单元。const emojiString = "😀"; console.log(emojiString.length); // 输出 2 (而不是 1)
不可变性:
length
属性是只读的,不能通过直接修改length
来改变字符串的长度。字符串本身也是不可变的,对字符串进行操作会返回一个新的字符串。let mutableString = "abc"; mutableString.length = 5; // 尝试修改 length 属性,无效 console.log(mutableString.length) // 输出 3 mutableString = mutableString + "d" console.log(mutableString.length); // 输出4
String
对象: 当对String
对象调用length
时,行为与原始字符串相同。const strObj = new String("Test"); console.log(strObj.length); // 输出 4