Chúng tôi được yêu cầu viết một hàm JavaScript lấy một chuỗi làm đối số duy nhất. Chuỗi có thể chứa dấu chấm hỏi (?) Ở đầu và cuối. Hàm nên loại bỏ tất cả các dấu chấm hỏi này ngay từ đầu và cuối cùng giữ nguyên mọi thứ khác.
Ví dụ -
Nếu chuỗi đầu vào là -
const str = '??this is a ? string?';
Sau đó, đầu ra phải là -
const output = 'this is a ? string';
Ví dụ
Sau đây là mã -
const str = '??this is a ? string?';
const specialTrim = (str = '', char = '?') => {
str = str.trim();
let countChars = orientation => {
let inner = (orientation == "left")? str :
str.split("").reverse().join("");
let count = 0;
for (let i = 0, len = inner.length; i < len; i++) {
if (inner[i] !== char) {
break;
};
count++;
};
return (orientation == "left")? count : (-count);
};
const condition = typeof char === 'string' && str.indexOf(char) === 0 && str.lastIndexOf(char, -1) === 0;
if (condition) {
str = str.slice(countChars("left"), countChars("right")).trim();
};
return str;
}
console.log(specialTrim(str)); Đầu ra
Sau đây là kết quả trên bảng điều khiển -
this is a ? string