Тип података дефинише тип и понашање података — говори компајлеру или тумачу како програмер намерава да користи део података. Већина програмских језика подржава основне типове података као што су број, логички, стринг итд.

ЈаваСцрипт подржава осам типова података: број, БигИнт, Боолеан, Стринг, Нулл, Ундефинед, Симбол и Објецт. У овом чланку ћете научити о свих осам ЈаваСцрипт типова података и како да их користите.

ЈаваСцрипт типови података

Типови података у ЈаваСцрипт-у се могу широко класификовати у две категорије: Примитивни типови података и Непримитивни типови података. Објекат је непримитиван или сложен тип података, а остали су примитивни типови података.

ЈаваСцрипт је динамички куцан језик, што значи да се типови променљивих проверавају током рада. Иста променљива може да садржи вредности различитих типова у било ком тренутку.

На пример:

// к је стринг
лет к = "Здраво, свет";
// к је број
к = 100;
// к је сада логички
к = истина;

Ако желите да пронађете тренутни тип података променљиве, користите тип оператер.

// к је стринг
лет к = "Здраво, свет";
цонсоле.лог (типеоф (к));
// к је број
к = 100;
цонсоле.лог (типеоф (к));
// к је сада логички
к = истина;
цонсоле.лог (типеоф (к));

Излаз:

низ
број
боолеан

1. Тип података броја у ЈаваСцрипт-у

Тип података броја у ЈаваСцрипт-у користи ИЕЕЕ-754 формат за представљање и целих бројева и бројева са покретним зарезом. Можете извршити многе операције над бројевима у ЈаваСцрипт-у као што су сабирање, одузимање, дељење, множење итд. Да бисте извршили сложеније операције, можете користити уграђени Математички објекат.

Неки примери за креирање бројева у ЈаваСцрипт-у:

// Коришћење литералне декларације
нека је н1 = 100;
нека је н2 = 456,234;
// Коришћење конструктора Нумбер().
нека је н3 = Број (100);
// Конверзија у цео број
нека н4 = Нумбер.парсеИнт("456.234");
// Конверзија у флоат
нека н5 = Нумбер.парсеФлоат("456.234");
нека н6 = Нумбер.парсеФлоат("1.13е3");
// Унарна конверзија у број
нека н7 = +"345";
цонсоле.лог (н1);
цонсоле.лог (н2);
цонсоле.лог (н3);
цонсоле.лог (н4);
цонсоле.лог (н5);
цонсоле.лог (н6);
цонсоле.лог (н7);

Излаз:

100
456.234
100
456
456.234
1130
345

Интегер Нумберс

Следећа изјава креира променљиву која садржи цео број:

нека је к = 21;

Ако желите да креирате окталне (основа 8) литерале, морате да користите префикс са низом окталних цифара (цифре од 0 до 7).

нека је к = 0о53;
цонсоле.лог (к);

Излаз:

43

Слично томе, ако желите да креирате хексадецималне (основа 16) литерале, користите префикс са низом хексадецималних цифара (од 0 до 9, и од А до Ф).

нека к = 0к53;
цонсоле.лог (к);

Излаз:

83

Бројеви са плутајућим зарезом

Следећа изјава креира променљиву која садржи број са покретним зарезом:

нека је к = 324,56;

Можете користити е-нотацију за представљање веома великих или веома малих бројева.

нека је к = 1.13е6;
цонсоле.лог (к);

Излаз:

1130000

ЈаваСцрипт такође пружа друге посебне нумеричке вредности које припадају број тип података—НаН, Инфинити и -Инфинити.

  • НаН: НаН означава Није број што значи неважећи број. На пример, ако поделите низ и број, резултат ће бити НаН.
    цонсоле.лог("МакеУсеОф"/10);
    Излаз:
    НаН
    Занимљиво је да НаН није једнак ничему, укључујући и самог себе.
    цонсоле.лог (НаН == НаН);
    цонсоле.лог (НаН == ("МакеУсеОф"/10));
    цонсоле.лог (НаН НаН);
    Излаз:
    лажно
    лажно
    лажно
    Такође, ако математички израз негде садржи НаН, резултат је увек НаН.
  • Бесконачност и -Бесконачност: Инфинити и -Бесконачност представља математичку и -∞ редом.

2. БигИнт тип података у ЈаваСцрипт-у

БигИнт је примитиван тип података у ЈаваСцрипт-у који може да представља целе бројеве са произвољном прецизношћу. Пошто тип података броја не може представљати вредности веће од (2⁵³-1) или вредности мање од -(2⁵³-1), БигИнт се у таквим случајевима користи за представљање веома великих или малих бројева.

БигИнт бројеви се ретко користе. Али ако заиста треба да представите велике бројеве, нпр. за криптографију, израчунавање факторијела великих бројеви, који представљају масу сунца, временске ознаке микросекунде и тако даље, БигИнт је оно што желите користити.

Можете креирати БигИнт вредност додавањем н на крај целог броја или коришћењем конструктора.

нека биг1 = 78649264972634817648747234872634876243862348763467547н;
лет биг2 = БигИнт("78649264972634817648747234872634876243862348763467547");
цонсоле.лог (биг1);
цонсоле.лог (биг2);

Излаз:

78649264972634817648747234872634876243862348763467547н
78649264972634817648747234872634876243862348763467547н

БигИнт тип података је релативно новији додатак језику и тренутно га подржавају скоро сви прегледачи осим Интернет Екплорер-а.

3. Боолеан тип података у ЈаваСцрипт-у

Боолеан тип података може имати две вредности: истина и лажно. Булове вредности су резултат логичких поређења.

нека к1 = истина;
цонсоле.лог (к1);
нека к2 = !труе;
цонсоле.лог (к2);
нека к3 = !!тачно;
цонсоле.лог (к3);
нека к4 = (нетачно && истина);
цонсоле.лог (к4);
нека к5 = (фалсе || труе);
цонсоле.лог (к5);
нека к6 = (2 == "2");
цонсоле.лог (к6);
нека к7 = (2 "2");
цонсоле.лог (к7);
нека к8 = (нулл недефинисано);
цонсоле.лог (к8);
нека к9 = ​​(0 == "");
цонсоле.лог (к9);
нека к10 = (100 > 12);
цонсоле.лог (к10);

Излаз:

истина
лажно
истина
лажно
истина
истина
лажно
лажно
истина
истина

Можете да конвертујете вредност било ког другог типа података у логички тип података користећи Боолеан() функција.

// Стрингс
цонсоле.лог (Боолеан(''));
цонсоле.лог (Боолеан('абц'));
цонсоле.лог (Боолеан('123'));
// Нумберс
цонсоле.лог (Боолеан (0));
цонсоле.лог (Боолеан (1));
цонсоле.лог (Боолеан(-1));
цонсоле.лог (Боолеан (НаН));
цонсоле.лог (Боолеан (Бесконачно));
// Отхерс
цонсоле.лог (Боолеан([1, 2, 3]));
цонсоле.лог (Боолеан (недефинисан));
цонсоле.лог (Боолеан (нулл));

Излаз:

лажно
истина
истина
лажно
истина
истина
лажно
истина
истина
лажно
лажно

4. Стринг тип података у ЈаваСцрипт-у

Стринг је низ од нула или више знакова. Стрингови у ЈаваСцрипт-у су непроменљиви и углавном се користе за представљање текстуалних података. Индексирање стрингова почиње од 0, тј. први елемент је на индексу 0, други на 1 итд.

Низови морају бити окружени наводницима. За креирање стринга можете користити било који од три типа наводника: једноструки наводники, двоструки наводники или повратни наводники.

Једноструки и двоструки наводники практично раде исту ствар, али стринг који почиње двоструким наводником мора да се завршава двоструким наводником. Исто правило важи и за једноструки наводник.

лет стр1 = "Здраво";
нека стр2 = 'Здраво';
лет стр3 = "Како си?";
// Коришћење \ за избегавање једноструког наводника (')
лет стр4 = 'Како си?';

Повратници су литерали шаблона и пружају неку проширену функционалност. Можете да уградите променљиве, изразе, па чак и позиве функција унутар стринга.

// Уграђивање променљиве унутар стринга
нека к = "Здраво";
лет стр1 = `${к}, како си?`;
цонсоле.лог (стр1);
// Уграђивање израза унутар стринга
нека стр2 = `Збир 20 + 30 је: ${20 + 30}`;
цонсоле.лог (стр2);
// Уграђивање позива функције унутар стринга
функција израчунава збир (а, б) {
ретурн а + б;
}
нека стр3 = `Збир 20 + 30 је: ${цалцулатеСум (20, 30)}`;
цонсоле.лог (стр3);

Излаз:

Здраво, како си?
Збир 20 + 30 је: 50
Збир 20 + 30 је: 50

ЈаваСцрипт такође пружа неколико Стринг метода да манипулише низовима.

5. Нулл тип података у ЈаваСцрипт-у

Нулл тип података има само једну вредност: нула. Представља намерно одсуство било какве вредности објекта.

нека н = нулл;

Многи програмери се збуне између нулл и ундефинед. Тешко је разумети разлика између нулл и ундефинед у ЈаваСцрипт-у.

6. Недефинисани тип података у ЈаваСцрипт-у

Недефинисани тип је посебан тип који значи „вредност није додељена“. Када декларишете променљиву, али је не иницијализујете, променљивој се додељује недефинисана вредност.

нека к;
цонсоле.лог (типеоф (к));

Излаз:

недефинисан

Можете експлицитно да доделите недефинисано променљивој, али је веома препоручљиво да то избегавате.

Повезан: Методе постављања ЈаваСцрипта које би требало да савладате данас

7. Симбол Тип података у ЈаваСцрипт-у

Симбол је јединствена и непроменљива примитивна вредност. Углавном се користи за креирање јединствених идентификатора за објекте.

Можете креирати симбол користећи симбол() функција. Такође прихвата опциони опис (име), али само за потребе отклањања грешака.

нека сим1 = Симбол();
лет сим2 = Симбол("подаци");

Тхе симбол() функција креира нову јединствену вредност сваки пут када се позове, чак и ако креирате симболе са истим описом, вредности би биле различите.

цонсоле.лог (Симбол() == Симбол());
цонсоле.лог (Симбол("дата") == Симбол("дата"));

Излаз:

лажно
лажно

Повезан: Методе ЈаваСцрипт мапа које би требало да савладате данас

8. Тип података објекта у ЈаваСцрипт-у

У ЈаваСцрипт-у, објекти су колекције парова кључ-вредност, где је кључ стринг, а вредност може бити било који тип података.

Можете креирати празан објекат у ЈаваСцрипт-у користећи синтаксу „конструктор објекта“ (нови објекат()) или синтаксу „буквалног објекта“ (вијенасте заграде {...}).

нека обј1 = нови објекат();
нека обј2 = {};

Сваки објекат садржи опциону листу својстава, где је својство пар кључ: вредност. Можете приступити вредностима из објекта користећи нотацију тачака или нотацију налик низу (углате заграде).

нека обј = {
"кључ1": "вредност1",
"кључ2": "вредност2"
}
цонсоле.лог (обј.кеи1);
цонсоле.лог (обј["кеи2"]);

Излаз:

вредност1
вредност2

Како ради ЈаваСцрипт?

ЈаваСцрипт је данас један од најпопуларнијих програмских језика на вебу. Можете користити ЈаваСцрипт за креирање веб локација, веб апликација, серверских апликација, игара, мобилних апликација итд. Довољно је рећи да са ЈаваСцрипт-ом можете да урадите скоро све што смислите.

Али да ли знате како ЈаваСцрипт функционише испод хаубе?

Шта је ЈаваСцрипт и како функционише?

Ако учите веб развој, ево шта треба да знате о ЈаваСцрипт-у и како он функционише са ХТМЛ-ом и ЦСС-ом.

Реад Нект

ОбјавиТвеетЕмаил
Повезане теме
  • Програмирање
  • ЈаваСцрипт
  • Програмирање
  • Савети за кодирање
  • Веб Девелопмент
О аутору
Иуврај Цхандра (72 објављена чланка)

Иуврај је студент додипломских студија рачунарских наука на Универзитету у Делхију, Индија. Он је страствен за Фулл Стацк Веб Девелопмент. Када не пише, истражује дубину различитих технологија.

Више од Иувраја Цхандре

Претплатите се на наш билтен

Придружите се нашем билтену за техничке савете, рецензије, бесплатне е-књиге и ексклузивне понуде!

Кликните овде да бисте се претплатили