Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Топ:
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
Теоретическая значимость работы: Описание теоретической значимости (ценности) результатов исследования должно присутствовать во введении...
Интересное:
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
В JavaScript существуют целых 3 (!) метода для взятия подстроки, с небольшими отличиями между ними.
substring(start, end)
Метод substring(start, end) возвращает подстроку с позиции start до, но не включая end.
var str = "stringify";
alert(str.substring(0,1)); // "s", символы с позиции 0 по 1 не включая 1.
Если аргумент end отсутствует, то идет до конца строки:
var str = "stringify";
alert(str.substring(2)); // ringify, символы с позиции 2 до конца
substr(start, length)
Substr(start,number)
Первый аргумент имеет такой же смысл, как и в substring, а второй содержит не конечную позицию, а количество символов.
var str = "stringify";
str = str.substr(2,4); // ring, со 2-й позиции 4 символа
alert(str)
Если второго аргумента нет – подразумевается «до конца строки».
slice(start, end)
Возвращает часть строки от позиции start до, но не включая, позиции end. Смысл параметров – такой же как в substring.
Отрицательные аргументы
Различие между substring и slice – в том, как они работают с отрицательными и выходящими за границу строки аргументами:
Substring
Отрицательные аргументы интерпретируются как равные нулю. Слишком большие значения усекаются до длины строки:
alert("testme".substring(-2)); // "testme", -2 становится 0
Кроме того, если start > end, то аргументы меняются местами, т.е. возвращается участок строки между start и end:
alert("testme".substring(4, -1)); // "test"
// -1 становится 0 -> получили substring(4, 0)
// 4 > 0, так что аргументы меняются местами -> substring(0, 4) = "test"
Slice
Отрицательные значения отсчитываются от конца строки:
alert("testme".slice(-2)); // "me", от 2 позиции с конца
alert("testme".slice(1, -1)); // "estm", от 1 позиции до первой с конца.
Это гораздо более удобно, чем странная логика substring.
Отрицательное значение первого параметра поддерживается в substr во всех браузерах, кроме IE8-.
Если выбирать из этих трёх методов один, для использования в большинстве ситуаций – то это будет slice: он и отрицательные аргументы поддерживает и работает наиболее очевидно.
Специальные символы
Строки могут содержать специальные символы, которые позволяют форматировать текст прямо из кода.
Самый часто используемый из таких символов – это «перевод строки».
Он обозначается как \n, например:
alert('Привет\nМир'); // выведет "Мир" на новой строке
Есть и более редкие символы, вот их список:
Специальные символы
Экранирование специальных символов
Если строка в одинарных кавычках, то внутренние одинарные кавычки внутри должны быть экранированы, то есть снабжены обратным слешем \', вот так:
var str = 'I\'m a JavaScript programmer';
В двойных кавычках – экранируются внутренние двойные:
var str = "I'm a JavaScript \"programmer\" ";
alert(str); // I'm a JavaScript "programmer"
Экранирование служит исключительно для правильного восприятия строки JavaScript. В памяти строка будет содержать сам символ без '\'.
Сам символ обратного слэша '\' является служебным, поэтому всегда экранируется, т.е пишется как \\:
var str = ' символ \\ ';
alert(str); // символ \
Заэкранировать можно любой символ. Если он не специальный, то ничего не произойдёт:
alert("\a"); // a
// идентично alert("a");
Логическое преобразование
Преобразование к true/false происходит в логическом контексте, таком как if(…) или других подобных местах, и при применении логических операторов.
Все значения, которые интуитивно «пусты», становятся false. Их несколько: 0, пустая строка, null, undefined и NaN.
Остальное, в том числе и любые объекты – true.
Полная таблица преобразований:
| Таблица логических преобразований | |
| Значение | Преобразуется в |
| undefined, null | false |
| Числа | Все true, кроме 0, NaN -- false. |
| Строки | Все true, кроме пустой строки "" -- false |
| Объекты | Всегда true |
Для явного преобразования используется двойное логическое отрицание!!value или вызов Boolean(value).
Обратите внимание: строка "0" становится true
|
|
|
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!