Змінні та типи данних в JavaScript

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

Змінні, величини, імена й літерали

Значення

Javascript розпізнає наступні типи величин:

  1. Числа, типу 42 або 3.14159
  2. Логічні (Булевы), значення true або false
  3. Рядка, типу "Howdy!"
  4. Порожній покажчик, спеціальне ключове слово, що позначає нульове значення

Це відносно малий набір типів значень, або типів даних, які дозволяють вам виконувати функції у ваших додатках. Не існує ніякої явної відмінності між цілими числами й реально-оціненими числа. І при цьому не існує явного типу даних date в Navigator. Однак, об'єкт date і зв'язані вбудовані функції дозволяють вам обробляти дані

Об'єкти й функції - фундаментальні елементи в мові. Ви можете думати про об'єкти як про іменовані контейнери для значень, і про функції як про процедури, які ваш додаток може виконувати

Перетворення типів даних

Тип змінної залежить від того, який тип інформації в ній зберігається. Javascript не є жорстко типізованим мовою. Це означає, що ви не повинні точно визначати тип даних змінної, у момент її створення. Тип змінної привласнюється змінної автоматично протягом виконання скрипта. Так, наприклад, ви можете визначити змінну в такий спосіб:

var answer=42

А пізніше, ви можете привласнити тієї ж змінн значення, що наприклад випливає:

answer="Thanks for all the fish..."

Або розглянемо наступне вираження:

//приклад var onestring="1" var oneint=1 var oneconcatenate=onestring+oneint // У результаті виходить "11" var oneaddition=oneint+onestring // У результаті виходить 2

У першій операції додавання перший операнд є рядком. Javascript припускає, що проводиться операція із двома рядками. Коли Javascript виявляє в якості другого операнда ціле число, він у відповідності зі своїми виставами перетворить змінну в рядок.

Оскільки Javascript вільно типізований мова, те це не викличе помилки.

Тому що Javascript не підтримує ніяких методів і властивостей для визначення типу поточного значення змінної, дуже важливо внимательноотслеживать типи змінних щоб уникнути несподіваних результатів.

Взагалі, у вираженнях строкові значення, що включають числові й, Javascript перетворює числові значення в строкові. Наприклад, розглянемо наступні твердження:

x="The answer is " + 42 y=42 + " is the answer."

Перше твердження буде рядок "The answer is - 42 ". Друге твердження повертає рядок " 42 - The answer is".

Javascript надає кілька спеціальних функцій для керування строковими й числовими значеннями:

  1. eval обчислює рядок, що представляє будь-які Javascript літерали або змінні, перетворюючи її в число.
  2. parseint перетворює рядок у ціле число в зазначеній підставі системи числення, якщо можливо.
  3. parsefloat перетворює рядок у число із плаваючою крапкою, якщо можливо.

Змінні

Ви використовуєте змінні, щоб зберігати значення у вашому додатку. Ви даєте цим змінним імена, по яких ви посилаєтеся на них, і існують деякі правила, яким імена повинні відповідати.

Ідентифікатор Javascript або ім'я повинні початися із символу або символом підкреслення ("_"); послідовність символів також можуть бути цифри (0-9). Символи включають знаки з "A" до "Z" (верхнього регістру) і знаки з "a" до "z" (нижній регістр). Javascript ураховує регістр.

Деякі приклади припустимих імен:

Number_hits temp99 _name

Область дії змінних

Область дії змінних - те, де ви можете використовувати їх у скрипте. В Javascript, існує дві області дії, які змінні можуть мати:

Глобальна: Ви можете використовувати змінну де-небудь у додатку. Локальна: Ви можете використовувати змінну усередині поточної функції.

Щоб оголосити локальну змінну усередині функція, використовуйте ключове слово var, наприклад:

var total=0; 

Щоб оголосити глобальну змінну, оголосите змінну призначення, яка просто привласнює значення змінної (або у функції або поза функцією), наприклад:

total=0; 

Найкраще повідомляти глобальні змінні на початку вашого скрипта, так, щоб функції успадковували змінну і її значення.

Літерали

Літерали - спосіб, яким ви представляєте значення в Javascript. Установлені значення, які ви буквально (literally) представляєте у вашому джерелі, і - не змінні. Приклади літералів включають:

42 3.14159 "Бути або не бути"

Цілі числа (Integers)

Цілими називають числа виду 1, 164, 102390. Вони можуть бути виражені в десятковому ( по підставі 10), шестнадцатеричном ( по підставі 16), або восьмеричному ( по підставі 8) виставі. Десятковий літерал цілого числа складається з послідовності цифр без уведення 0 (нуля).

Ціле число може бути виражене у восьмеричному або шестнадцатеричном скоріше чому в десятиричное. Шестнацетеричные числа включають цифри 0-9 і букви a-f і A-F, в Javascript вони записуються з комбінацією символів 0x або 0X (нуль-x) перед числом. Восмиричные числа включають тільки цифри 0-7 і в Javascript записуються із провідного нуля.

Наприклад, десяткове число 23 представляється в шестнадцатеричном виді як 0x17 і у восмеричном як 027

Літерали із плаваючою крапкою

Літерали із плаваючою крапкою являють собою дробові частини цілих чисел і повинні містити в собі принаймні одну цифру й десяткову крапку або символ експоненти ("е" або "Е"). У наступних прикладах наведені різні варіанти вистави того самого числа:

3.1415927 31415927е-7 .31415927Е1

Логічні літерали

Логічні значення мають тільки два значення, дійсна (true) або неправда (false). У деяких реалізаціях мови Javascript 0 (false) і 1 (true) не можуть бути використані в якості логічних значень.

Рядка

Строкові літерали - нуль або більша кількість знаків, располеженные в подвійні (") або одинарних (') лапках. Рядки повинен бути розділені лапками того ж самого типу; тобто або обидві одинарні лапки або подвійні лапки. Використання зворотної подвійної риси "" дозволяє вставляти в рядок спеціальні символи. Приведемо приклади строкових літералів:

"Blah" 'Blah' "1234" "one line another line"

Спеціальні символи

Ви можете використовувати наступні спеціальні символи в строкових литаралах Javascript:

указує повернення на один символ. f указує переклад сторінки. указує нову цифру(знак) лінії. указує повернення каретки. указує cимвол табуляції.

Символи виходу

Ви можете вставляти лапок усередині рядка, передуючи їм похилою рисою вліво. Це відомо як вихід лапок. Наприклад,

document.write("" Вам слід прийняти ванну",

- сказав доктор і наморщив ніс.");

виводить

" Вам слід прийняти ванну", - сказав доктор і наморщив ніс