傳統(tǒng)上跌榔,JavaScript只有indexOf方法,可以用來確定一個(gè)字符串是否包含在另外一個(gè)字符串中捶障。es6又提供了三種新的方法僧须。
-includes(): 返回布爾值,表示是否找到了參數(shù)字符串项炼。
-startsWith():返回布爾值担平,表示參數(shù)字符串是否在源字符串的頭部。
-endsWith():返回布爾值锭部,表示參數(shù)字符串是否在原字符串的尾部暂论。
let
s = "Hello World!";
let a = s.startsWith("Hello");
let b = s.endsWith("!");
let c = s.includes('o');
console.log("------a=", a, '-----b=', b, '----c=', c);
//------a= true -----b= true ----c= true
這三種方法還支持第二個(gè)參數(shù),表示開始搜索的位置拌禾。
let s1 = "Hello World!";
let a1 = s.startsWith("Hello", 2);
let b1 = s.endsWith("World", 6);
let c1 = s.includes('', 6);
console.log("------a1=", a1, '-----b1=', b1, '----c1=', c1);
//------a1= false -----b1= false ----c1= true
endsWith的行為與其他兩個(gè)方法有所不同取胎。它針對(duì)前n個(gè)字符,而其他兩個(gè)方法針對(duì)從第n個(gè)位置直到字符串結(jié)束蹋砚。