导航


HTML

CSS

JavaScript

浏览器 & 网络

版本管理

框架

构建工具

TypeScript

性能优化

软实力

算法

UI、组件库

Node

冷门技能

1. 获取字符串长度

const str = 'hello';
str.length;   // 输出结果:5

2. 获取字符串指定位置的值

charAt()charCodeAt() 方法都可以通过索引来获取指定位置的值

charAt

const str = 'Lance';
console.log(str.charAt(1)); // a

charCodeAt

const str = 'Lance';
console.log(str.charCodeAt(1)); // 97

3. 检索字符串是否包含特定序列

⭐️ indexOf

const str = 'Lance';
console.log(str.indexOf()); // -1

const str1 = 'undefined';
console.log(str1.indexOf()); // 0  因为默认不传,就当传字符串 "undefined"
const str = 'Lance';
console.log(str.indexOf('e', -10)); // 4

const str1 = 'Lance';
console.log(str1.indexOf('e', 4)); // 4

const str2 = 'Lance';
console.log(str2.indexOf('e', 5)); // -1

注意 searchValue'' 空串情况:

console.log('Lance'.indexOf('')) // 返回 0
console.log('Lance'.indexOf('', -5)) // 返回 0
console.log('Lance'.indexOf('', 0)) // 返回 0
console.log('Lance'.indexOf('', 3)) // 返回 3
console.log('Lance'.indexOf('', 8)) // 返回 5

console.log('Lance'.indexOf('', 5)) // 返回 5
console.log('Lance'.indexOf('', 13)) // 返回 5
console.log('Lance'.indexOf('', 22)) // 返回 5

⭐️ 当 fromIndex 小于 0 时,与 Array.prototype.indexOf 比较

const str = 'Lance';
console.log(str.indexOf('a', -2)); // 1
// 如果 formIndex 为负数,会当做没传 fromIndex,默认从索引0开始查找

const arr = ['L', 'a', 'n', 'c', 'e'];
console.log(arr.indexOf('a', -2)); // -1
// 如果 formIndex 为负数,会从 (arr.length + fromIndex) 也就是 (5 + (-2)) 也就是3
// 索引开始查找,然后没找到,返回 -1

lastIndexOf

let str = "abcabc";
console.log(str.lastIndexOf("a"));  // 输出结果:3
console.log(str.lastIndexOf("z"));  // 输出结果:-1

includes

'Blue Whale'.includes('blue'); // return false

startsWith

const str = 'Lance';
console.log(str.startsWith('a')); // false
console.log(str.startsWith('a', 1)); // true

endsWith