Галоўная > Асновы мовы JavaScript: Аб'екты

Асновы мовы JavaScript: Аб'екты

JavaScript

Гэта працяг серыі артыкулаў пра асновы JavaScript.

Аб'ект, як тып даных, складаецца з многіх значэнняў (альбо простых, такіх як лікі і радкі, альбо складаных, напрыклад іншых аб'ектаў), якія называюцца ўласцівасцямі аб'екта. Два асобных аб'екта ў JavaScript ніколі не будуць роўнымі, нават калі яны маюць роўны набор уласцівасцей.

Аб'екты ў JavaScript аб'яўляецца па наступнай схеме:

text
1var <імя аб'екта> = {
2   <уласцівасць_1>:<значэнне>,
34   <уласцівасць_n>:<значэнне> 
5};

Напрыклад:

text
1var person = {
2    firstName: "Янка",
3    lastName: "Купала",
4    age: 20,
5    eyeColor: "шэры"
6};

Кожны раз, калі скрыпт спрабуе звярнуцца да ўласцівасці або метаду значэння простага тыпу, інтэрпрэтатар часова пераўтворыць яго ў аб'ект адпаведнага тыпу. Часовыя аб'екты, у якія пераўтворацца значэнні прымітыўнага тыпу, называюць аб'ектамі-абгорткамі. Адразу пасля звароту да ўласцівасці або метаду аб'ект-абгортка знішчаецца. Аб'екты-абгорткі ствараюцца толькі для значэнняў тыпу number, string і boolean.

Аб'ект тыпу String

Аб'ект String будзе мець тып даных object, калі ён створаны з дапамогай аператара new.

text
1var str = "Гэта просты радок";
2var s_O = new String("Аб'ект String");
3
4typeof strLit;   //string
5typeof s_O;      //object

Праца з масівамі. Аб'ект Array

У JavaScript для захоўвання ўпарадкаваных даных выкарыстоўваецца структура даных масіў — Array. Элементы масіву нумаруюцца, пачынаючы з нуля. Існуе некалькі спосабаў аб'явы масіву:

text
1var holidays = ["1 мая","7 чэрвеня","3 ліпеня"];
2
3var holidays = new Array("1 мая", "7 чэрвеня", "3 ліпеня");
4
5var holidays = new Array(3);
6holidays[0] = "1 мая";
7holidays[1] = "7 чэрвеня";
8holidays[2] = "3 ліпеня";

Памер масіву можа павялічвацца і памяншацца ў любы час. Атрыбут масіву length вызначае агульную колькасць элементаў масіву. У масіве могуць захоўвацца элементы любога тыпу.

text
1var a = [23, "Ян", true, function() {alert("свет");}];
2
3alert(a[1]);      // Ян
4alert(a.length);  // 4

Масівы пашыраюць аб'екты, так як прадугледжваюць спецыяльныя метады для працы са спарадкаванымі структурамі даных.

Праца з матэматыкай. Аб'ект Math

Для захоўвання матэматычных канстант і функцый у JavaScript прызначаны аб'ект Math. Калі вы ведаеце мову C++, то метады, з якімі працуе гэты аб'ект у JavaScript, аналагічныя матэматычным функцыям у С++. Гэты аб'ект не працуе з лікамі тыпу BigInt.

text
1var x = Math.PI;
2var y = Math.sqrt(16);
3var z = Math.round(4.7);

Праца з датай і часам. Аб'ект Date

Для працы з датай і часам у JavaScript выкарыстоўваюцца аб'екты Date. Такія аб'екты могуць быць створаны толькі шляхам выкліку функцыі Date з выкарыстаннем аператара new. Некаторыя ўласцівасці аб'екта Date:

  • Утрымліваюць дату ў выглядзе ліку мілісекунд, якія прайшлі з 01.01.1970.
  • Нумарацыя месяцаў пачынаецца з 0.
  • Калі перададзены два аргументы, адсутныя аргументы ўстанаўліваюцца ў стартавыя значэнні.
  • Выклік функцыі Date без аператара new верне радок з бягучай датай і часам.

Прыклады стварэння аб'екта Date:

text
1// бягучая дата і час
2new Date();
3
4/* колькасць мілісекунд, якія прайшлі з 01.01.1970 */
5new Date(0);
6
7// 1982-09-19
8new Date(1982, 8, 19);
9
10// 2022-01-01
11new Date("January 1, 2022");
12
13/* абедзве функцыі будуць утрымліваць дату 2021-02-01 */
14new Date(2020, 13, 1);
15new Date(2021, 1, 1);
16
17// 2021-01-01 02:03:04
18new Date(2021, 0, 1, 2, 3, 4);
19

Некаторыя метады для працы з аб'ектамі тыпу Date:

МетадыАпісанне
getFullYear()Атрымаць год (з 4 лічбаў)
getMonth()Атрымаць месяц (ад 0 да 11)
getDate()Атрымаць лік месяца (ад 1 да 31)
getHours() getMinutes() getSeconds()Атрымаць адпаведныя кампаненты часу
getDay()Атрымаць дзень тыдня
Дзмітрый Зубялевіч, 2023-04-04
Каментары

    (Каб даслаць каментар залагуйцеся ў свой уліковы запіс)