You don't know js(up & going)


Download 424.95 Kb.
Pdf ko'rish
bet26/53
Sana08.11.2023
Hajmi424.95 Kb.
#1757840
1   ...   22   23   24   25   26   27   28   29   ...   53
Bog'liq
You don\'t know JS(up & going)

______________________________________________________
var arr = [
"hello world",
42,
true
];
arr[0];
// "hello world"
arr[1];
// 42
arr[2];
// true
arr.length;
// 3
typeof arr;
// "object"
______________________________________________________
**Примечание:** Языки, которые начинают счет с нуля, как и JS, используют `0` в
качестве индекса первого элемента массива.
Полезно представить `arr` визуально:


______________________________________________________

______________________________________________________
Поскольку массивы — это особые объекты (как намекает `typeof`), то у них
могут быть свойства, включая автообновляемое свойство `length` (длина).
Теоретически, вы можете использовать массив как обычный объект со своими
собственными именованными свойствами или использовать `object`, дав ему
числовые свойства (`0`, `1` и т.д.) как у массива. Однако, в общем это было бы
использованием соответствующих типов не по назначению.
Лучшим и самым естественным подходом является использование массивов для
значений, расположенных по числовым позициям, и использовать `object` для
именованных свойств.
Функции
Еще один подтип `object`, которым вы будете пользоваться во всех ваших JS
программах — это функция:
______________________________________________________
function foo() {
return 42;
}
foo.bar = "hello world";
typeof foo;
// "function"
typeof foo();
// "number"
typeof foo.bar;
// "string"
______________________________________________________
Еще раз, функции — это подтипы `объектов`: `typeof` вернет `"function"`, что
говорит о том, что `function` является основным типом, и поэтому у него могут
быть свойства, но обычно вы в редких случаях будете пользоваться свойствами
функций (к примеру, `foo.bar`).
**Примечание:** Более детальная информация о значениях в JS и их типах есть в
первых двух главах книги *Типы и синтаксис* этой серии.

Download 424.95 Kb.

Do'stlaringiz bilan baham:
1   ...   22   23   24   25   26   27   28   29   ...   53




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling