📄 String Operation
1. 操作 String 重复指定的次数
尝试设计一个 function,允许将 string 重复指定的次数。
I. 使用 repeat() solution(ES6+)
因为现在 String 已经支持 repeat(),所以可以直接使用。
const repeatedString = 'Pitt';
console.log(`Name Repeat : ${repeatedString.repeat(3)}`); // "Name Repeat : PittPittPitt"
Reference
II. 使用循环
如果不使用 repeat(),也可以使用循环,通过传参数的方式,约束在正整数的条件下达成。
function repeatString(str, num) {
// 检查是否为非正整数
if (num < 0 || !Number.isInteger(num)) {
throw new Error('请输入正整数');
}
let repeatedString = '';
for (let i = 0; i < num; i++) {
repeatedString += str;
}
return repeatedString;
}
2. 处理 string 中的文件名或扩展名
尝试设计一个 getFileExtension(),可以从参数中获取影片的扩展名格式,若没有扩展名则返回文件名称。
const fileName = 'video.mp4';
const fileNameWithoutExtension = 'file';
const fileNameWithoutExtension2 = 'example.flv';
const fileNameWithoutExtension3 = 'movie.mov';
const fileNameWithoutExtension4 = '.gitignore';
I. 使用 split 获取文件名称
const getFileExtension = (fileName) => {
const fileNameSplit = fileName.split('.');
return fileNameSplit[fileNameSplit.length - 1];
};
console.log(getFileExtension(fileName)); // "mp4"
console.log(getFileExtension(fileNameWithoutExtension)); // "file"
console.log(getFileExtension(fileNameWithoutExtension2)); // "flv"
console.log(getFileExtension(fileNameWithoutExtension3)); // "mov"
console.log(getFileExtension(fileNameWithoutExtension4)); // ""