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