JavaScript String endsWith()
endsWith() 方法用來判斷字串是否以指定的子字串結尾,回傳 true 或 false。
語法:
str.endsWith(searchString[, length])
- searchString 是要檢查的結尾字串
- length 是可選的,指定要搜尋的字串長度(預設為整個字串長度)
- 回傳 true 表示是以該字串結尾;false 表示不是
用法:
'Hello World'.endsWith('World'); // true
'Hello World'.endsWith('world'); // false(大小寫有別)
'Hello World'.endsWith('Hello'); // false
指定搜尋長度:
// 只檢查前 5 個字元
'Hello World'.endsWith('Hello', 5); // true
'Hello World'.endsWith('ello', 5); // true
'Hello World'.endsWith('World', 5); // false
實際應用:
// 檢查副檔名
var filename = 'document.pdf';
if (filename.endsWith('.pdf')) {
console.log('這是 PDF 檔案');
}
// 檢查多種副檔名
function isImage(filename) {
return filename.endsWith('.jpg') ||
filename.endsWith('.jpeg') ||
filename.endsWith('.png') ||
filename.endsWith('.gif');
}
isImage('photo.jpg'); // true
isImage('doc.pdf'); // false
// 過濾特定結尾的檔案
var files = ['app.js', 'style.css', 'main.js', 'index.html'];
var jsFiles = files.filter(function(file) {
return file.endsWith('.js');
});
// ['app.js', 'main.js']
endsWith() 是 ES6 新增的方法。這個方法是大小寫敏感的。