Все значения в JavaScript, за исключением null
и undefined
, содержат набор вспомогательных функций и значений, доступных «через точку».
Такие функции называют «методами», а значения – «свойствами». Здесь мы рассмотрим основы использования свойств и методов.
Свойство str.length
У строки есть свойство length
, содержащее длину:
alert( "Привет, мир!".length ); // 12
Можно и записать строку в переменную, а потом запросить её свойство:
var str = "Привет, мир!";
alert( str.length ); // 12
Метод str.toUpperCase()
Также у строк есть метод toUpperCase()
, который возвращает строку в верхнем регистре:
var hello = "Привет, мир!";
alert( hello.toUpperCase() ); // "ПРИВЕТ, МИР!"
Обратите внимание, для вызова метода обязательно нужны круглые скобки.
Посмотрите, например, результат обращения к toUpperCase
без скобок:
var hello = "Привет";
alert( hello.toUpperCase ); // function...
Метод – это встроенная команда («функция», мы поговорим о них позже), которую нужно вызвать для получения значения. При обращении без скобок мы получим саму эту функцию. Как правило браузер выведет её как-то так: "function toUpperCase() { ... }"
.
А чтобы получить результат – нужно произвести её вызов, добавив скобки:
var hello = "Привет";
alert( hello.toUpperCase() ); // ПРИВЕТ
Более подробно с различными свойствами и методами строк мы познакомимся в главе Строки.
Метод num.toFixed(n)
Есть методы и у чисел, например num.toFixed(n)
. Он округляет число num
до n
знаков после запятой, при необходимости добивает нулями до данной длины и возвращает в виде строки (удобно для форматированного вывода):
var n = 12.345;
alert( n.toFixed(2) ); // "12.35"
alert( n.toFixed(0) ); // "12"
alert( n.toFixed(5) ); // "12.34500"
Детали работы toFixed
разобраны в главе Числа.
К методу числа можно обратиться и напрямую:
alert( 12.34.toFixed(1) ); // 12.3
…Но если число целое, то будет проблема:
alert(12.toFixed(1)); // ошибка!
Ошибка произойдёт потому, что JavaScript ожидает десятичную дробь после точки.
Это – особенность синтаксиса JavaScript. Вот так – будет работать:
alert( 12..toFixed(1) ); // 12.0
Итого
В этой главе мы познакомились с методами и свойствами.
Почти все значения в JavaScript, кроме разве что null
и undefined
имеют их и предоставляют через них разную функциональность.
Далее мы подробно разберём основные свойства и методы структур данных в JavaScript.