Appearance
字符串
连接字符串
javascript
let str = "hello,";
let str2 = "how are you?";
console.log(str + "I'm fine." + str2 + str2);
转义字符串中的字符 加\
数字与字符串
javascript
console.log("Front" + 242); //Front242
let myDate = "19" + "67";
console.log(myDate, typeof myDate); //1967 string
let myDate2 = 19 + "67";
console.log(myDate2, typeof myDate); //1967 string
把字符串当成对象
一旦变量成为字符串对象实例,就有大量的原型和方法编辑
- 获得字符串长度
javascript
let browserType = "mozilla";
console.log(browserType.length); //7
- 检索特定字符串字符
javascript
let browserType = "mozilla";
console.log(browserType[0]); //m
console.log(browserType[browserType.length - 1]); //a
console.log(browserType.charAt(1)); //o
- 在字符串中查找子字符串并提取它
javascript
let browserType = "mozilla";
console.log(browserType.indexOf("zilla")); //2
console.log(browserType.indexOf("vanilla")); //-1
console.log(browserType.slice(2, 4)); //zi
console.log(browserType.slice(2)); //zilla
indexOf在字符串中找不到子字符串时会返回-1 slice 第一个参数时开始提取的字符位置,第二个是提取的最后一个字符的后一个位置,包括开始,不包括最后 slice 第二个参数可选,如果没传,默认到末尾
- 转换大小写
javascript
let sentence = "My NaME is Cy";
console.log(sentence.toLowerCase())//my name is cy
console.log(sentence.toUpperCase())//MY NAME IS CY
- 替换字符串的某部分
javascript
let browserType = "mozilla";
console.log(browserType.replace("moz", "van")); //vanilla
console.log(browserType); //mozilla
此方法不会改变原字符串
基本字符串和字符串对象的区别 基本字符串:字面量创建和直接调用String方法的字符串 字符串对象:new生成字符传对象实例
只有将基本字符串转化为字符串对象之后才可以使用字符串对象的方法 当基本字符串调用字符串才有的方法或者查询值的时候,js会自动将基本字符串转化为字符串对象并且调用相应的方法或者执行查询
javascript
let str = "2+2";
let str2 = new String("2+2");
console.log(eval(str)) //4
console.log(eval(str2)) //String {'2+2'}
console.log(eval(str2.valueOf())) //4
- 使用eval产生结果不同
- 可以使用valueOf(),可以将字符串对象转换为其对应的基本字符串