ÐÑедÑпÑеждение: Так как String.prototype.substr(â¦)
не полноÑÑÑÑ ÑпÑазднена (а лиÑÑ "Ñдалена из ÑÑандаÑÑов по вебÑ"), она ÑÑиÑаеÑÑÑ ÑнаÑледованной ÑÑнкÑией, иÑполÑзование коÑоÑой лÑÑÑе избегаÑÑ Ñам, где ÑÑо возможно. Ðна не ÑвлÑеÑÑÑ ÑаÑÑÑÑ ÑдÑа ÑзÑка JavaScript и Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ñдалена в бÑдÑÑем. ÐÑли еÑÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ, иÑполÑзÑйÑе меÑод substring()
.
ÐеÑод substr()
возвÑаÑÐ°ÐµÑ Ñказанное колиÑеÑÑво Ñимволов из ÑÑÑоки, наÑÐ¸Ð½Ð°Ñ Ñ Ñказанной позиÑии.
const str = "Mozilla";
console.log(str.substr(1, 2));
// Expected output: "oz"
console.log(str.substr(2));
// Expected output: "zilla"
СинÑакÑиÑ
str.substr(start[, length])ÐаÑамеÑÑÑ
start
ÐозиÑиÑ, Ñ ÐºÐ¾ÑоÑой наÑинаÑÑ Ð¸Ð·Ð²Ð»ÐµÐºÐ°ÑÑ ÑимволÑ. ÐÑли пеÑедано оÑÑиÑаÑелÑное ÑиÑло, она ÑÑакÑÑеÑÑÑ ÐºÐ°Ðº strLength - start
, где strLength
Ñавна длине ÑÑÑоки (напÑимеÑ, еÑли паÑамеÑÑ start
Ñавен -3, Ñо он ÑÑакÑÑеÑÑÑ ÐºÐ°Ðº strLength - 3
.)
length
ÐеобÑзаÑелÑнÑй паÑамеÑÑ. ÐолиÑеÑÑво извлекаемÑÑ Ñимволов.
ÐÐ¾Ð²Ð°Ñ ÑÑÑока, ÑодеÑжаÑÐ°Ñ ÑаÑÑÑ Ð¸ÑÑ Ð¾Ð´Ð½Ð¾Ð¹, обÑезанной по пеÑеданнÑм паÑамеÑÑам.
ÐпиÑаниеÐаÑамеÑÑ start
ÑвлÑеÑÑÑ Ð¸Ð½Ð´ÐµÐºÑом Ñимвола. ÐÐ½Ð´ÐµÐºÑ Ð¿ÐµÑвого Ñимвола Ñавен 0, а поÑледнего Ñимвола â на один менÑÑе Ð´Ð»Ð¸Ð½Ñ ÑÑÑоки. ÐеÑод substr()
наÑÐ¸Ð½Ð°ÐµÑ Ð¸Ð·Ð²Ð»ÐµÐºÐ°ÑÑ ÑÐ¸Ð¼Ð²Ð¾Ð»Ñ Ð½Ð°ÑÐ¸Ð½Ð°Ñ Ñ Ð¿Ð¾Ð·Ð¸Ñии start
и ÑобиÑÐ°Ñ length
Ñимволов (еÑли он не доÑÑÐ¸Ð³Ð½ÐµÑ ÑанÑÑе конÑа ÑÑÑоки, в ÑÑом ÑлÑÑае бÑÐ´ÐµÑ Ð²Ð¾Ð·Ð²ÑаÑено менÑÑее колиÑеÑÑво Ñимволов).
ÐÑли паÑамеÑÑ start
ÑвлÑеÑÑÑ Ð¿Ð¾Ð»Ð¾Ð¶Ð¸ÑелÑнÑм и он болÑÑе, либо Ñавен длине ÑÑÑоки, меÑод substr()
веÑнÑÑ Ð¿ÑÑÑÑÑ ÑÑÑокÑ.
ÐÑли паÑамеÑÑ start
ÑвлÑеÑÑÑ Ð¾ÑÑиÑаÑелÑнÑм, меÑод substr()
иÑполÑзÑÐµÑ ÐµÐ³Ð¾ как Ð¸Ð½Ð´ÐµÐºÑ Ñимвола, наÑÐ¸Ð½Ð°Ñ Ñ ÐºÐ¾Ð½Ñа ÑÑÑоки. ÐÑли паÑамеÑÑ start
оÑÑиÑаÑелен и по модÑÐ»Ñ Ð±Ð¾Ð»ÑÑе Ð´Ð»Ð¸Ð½Ñ ÑÑÑоки, меÑод substr()
бÑÐ´ÐµÑ Ð¸ÑполÑзоваÑÑ 0 в каÑеÑÑве наÑалÑного индекÑа. ÐбÑаÑиÑе внимание: опиÑÐ°Ð½Ð½Ð°Ñ Ð¾Ð±ÑабоÑка оÑÑиÑаÑелÑнÑÑ
знаÑений аÑгÑменÑа start
не поддеÑживаеÑÑÑ JScript Ð¾Ñ Microsoft.
ÐÑли паÑамеÑÑ length
Ñавен нÑÐ»Ñ Ð¸Ð»Ð¸ оÑÑиÑаÑелен, меÑод substr()
веÑнÑÑ Ð¿ÑÑÑÑÑ ÑÑÑокÑ. ÐÑли паÑамеÑÑ length
опÑÑен, меÑод substr()
извлеÑÑÑ Ð²Ñе ÑÐ¸Ð¼Ð²Ð¾Ð»Ñ Ð´Ð¾ конÑа ÑÑÑоки.
substr()
var str = "абвгдеÑжзи";
console.log("(1, 2): " + str.substr(1, 2)); // '(1, 2): бв'
console.log("(-3, 2): " + str.substr(-3, 2)); // '(-3, 2): жз'
console.log("(-3): " + str.substr(-3)); // '(-3): жзи'
console.log("(1): " + str.substr(1)); // '(1): бвгдеÑжзи'
console.log("(-20, 2): " + str.substr(-20, 2)); // '(-20, 2): аб'
console.log("(20, 2): " + str.substr(20, 2)); // '(20, 2): '
ÐолиÑил
JScript Ð¾Ñ Microsoft не поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¾ÑÑиÑаÑелÑнÑе знаÑÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð½Ð°ÑалÑного индекÑа. ÐÑли Ð²Ñ Ñ Ð¾ÑиÑе иÑполÑзоваÑÑ ÑÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ, Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе иÑполÑзоваÑÑ ÑледÑÑÑий код ÑовмеÑÑимоÑÑи Ð´Ð»Ñ Ð¾Ð±Ñ Ð¾Ð´Ð° ÑÑой оÑибки:
// only run when the substr() function is broken
if ("ab".substr(-1) != "b") {
/**
* Get the substring of a string
* @param {integer} start where to start the substring
* @param {integer} length how many characters to return
* @return {string}
*/
String.prototype.substr = (function (substr) {
return function (start, length) {
// call the original method
return substr.call(
this,
// did we get a negative start, calculate how much it is from the beginning of the string
// adjust the start parameter for negative value
start < 0 ? this.length + start : start,
length,
);
};
})(String.prototype.substr);
}
СпеÑиÑикаÑии СовмеÑÑимоÑÑÑ Ñ Ð±ÑаÑзеÑами СмоÑÑиÑе Ñакже
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4