用js实现:写一个函数,参数1是截取字符串的起始位置, 参数2是截取字符串的结束位置,要截取的字符串,最后根据函数参数返回对应截取的字符串 模拟slice(), substr(),substring().
时间: 2023-04-05 18:03:17 浏览: 93
好的,我可以回答这个问题。以下是用 JavaScript 实现截取字符串的函数:
function mySlice(start, end, str) {
if (end === undefined) {
end = str.length;
}
if (start < 0) {
start = str.length + start;
}
if (end < 0) {
end = str.length + end;
}
var result = '';
for (var i = start; i < end; i++) {
result += str[i];
}
return result;
}
function mySubstr(start, length, str) {
if (length === undefined) {
length = str.length - start;
}
if (start < 0) {
start = str.length + start;
}
var end = start + length;
var result = '';
for (var i = start; i < end; i++) {
result += str[i];
}
return result;
}
function mySubstring(start, end, str) {
if (end === undefined) {
end = str.length;
}
if (start < 0) {
start = 0;
}
if (end < 0) {
end = 0;
}
if (start > end) {
var temp = start;
start = end;
end = temp;
}
var result = '';
for (var i = start; i < end; i++) {
result += str[i];
}
return result;
}
这个函数可以模拟 JavaScript 中的 slice()、substr() 和 substring() 函数。你可以传入起始位置和结束位置,或者只传入起始位置和要截取的长度。如果不传入结束位置,则默认截取到字符串的末尾。如果传入的位置是负数,则表示从字符串的末尾开始计算位置。如果传入的起始位置大于结束位置,则会自动交换这两个位置。
阅读全文