string api
字符串裁切
- slice
- substring
- substr
slice
slice(indexStart, ?indexEnd)支持负数,从左到右 ➡️
js
"0123".slice(0, 2); // "01" ;
// 如果没有 end ,直接取最后
"0123".slice(1); // "123" ;
// 支持负数,但是取值顺序不会改变
"0123".slice(-1); // "3" ;substring
substring(indexStart, ?indexEnd)start 、end 可以颠倒
不支持支持负数
js
"0123".substring(1); // 123
"0123".substring(2, 4); // 23
"0123".substring(4, 2); // 23substr
substr 在附录 B 中,而非核心规范中描述。
尽量使用 slice。
substr(start, ?length)length 是截取多少
支持负数。
查找字符串
- indexOf
- lastIndexOf
- includes
indexOf
从左往右找 ➡️
indexOf(searchString, ?position)position:为从第几个下标开始寻找
如果没有找到,则返回 -1
js
"大王叫我来巡山".indexOf("巡山"); // 5
"大王叫我来巡山"[5]; // '巡'lastIndexOf
从尾向头找 ⬅️
lastIndexOf(searchString, ?position)position:为从第几个下标开始寻找
js
大王叫我来巡山'.lastIndexOf('巡山'); // 5bitwise NOT
~-1 结果是 0,但是最好不要这么用。
js
~2; // -3,和 -(2+1) 相同
~1; // -2,和 -(1+1) 相同
~0; // -1,和 -(0+1) 相同
~-1; // 0,和 -(-1+1) 相同includes
includes(searchString, ?position)返回 boolean
js
"大王叫我来巡山".includes("巡山"); // true
"大王叫我来巡山".includes("大王没叫我"); // falsestartsWith 和 endsWith
startsWith(searchString, ?position)
endsWith(searchString, ?endPosition)js
"大王叫我来巡山".startsWith("大王"); // true
"大王叫我来巡山".startsWith("巡山"); // false
"大王叫我来巡山".startsWith("大王", 2); // falsejs
"大王叫我来巡山".endsWith("大王"); // false
"大王叫我来巡山".endsWith("巡山"); // true
"大王叫我来巡山".endsWith("巡山", 2); // false大小写转换
大写:toUpperCase
小写:toLowerCase