JavaScript: typeof - необхідність чи нові можливості

0 418

Раніше були дані конкретного типу і був інтерес їх обробляти з метою отримання результату. Панування «нетипових ідей у сфері опису» настало несподівано, але природно. Попереднє оголошення змінної перестало бути обов'язковим, а вказівку її типу взагалі втратило всякий сенс, у всякому разі до операції, в якій вона бере участь.

JavaScript: typeof - необхідність чи нові можливості
Програміст розв'язав собі руки: зовсім не обов'язково оголошувати що-то спочатку. Часто тільки до моменту використання буде визначеність, що брати, що робити і як. Що стосується типів, то вони самі по собі «стали значеннями», тобто стали даними, від яких теж щось залежить!


Її ще або вже немає, ну і що з того

Дуже просте опис змінної "aaa" і доступний алгоритм її обробки: var aaa ; if ( aaa ) {
Res = 'I am!' ; //Я Є!
} else {
Res = 'me no' ; //мене немає
} дасть очевидний результат: «мене немає». Тут значення функції javascript typeof = undefined. Просто описати змінну - «зовсім нічого не означає. Зрозуміло, коли aaa = 1 ми отримаємо: «Я Є!», але якщо aaa = 0 як і в першому випадку: «мене немає». Чудова логіка, інший математик, а також простий громадянин, не міг і подумати, що нульове значення має зовсім інший сенс, ніж реальний. Тільки сучасне (нетипове) програмування здатне на такі сміливі ідеї! Конструкція javascript typeof, як і більш інтелігентне вираз if (aaa) {x} else {y}, має прекрасні споживчі якості і дуже зручна у використанні.

Про особливості кирилиці і латиниці

Професійний програміст завжди віддасть перевагу англійське накреслення символів російської, душевно завдяки той етап розвитку програмування, коли на одних теренах кібернетика не була визнана, зате на інших територіях комп'ютерне справа впевнено пішло в гору. Почали множитися і розвиватися мови програмування, взявши за основу синтаксису 26 букв англійського алфавіту і комплект інших загальноприйнятих символів.


JavaScript: typeof - необхідність чи нові можливості
Самим простим і природним став машинний код, що він був прекрасний, досконалий, але специфічний на кожній архітектурі, а на мовах високого рівня ідея переносимості між архітектурами відразу стала актуальною. Це істотно суперечить поточного моменту: підстав для аналога javascript typeof = undefined | string | number | boolean | object | function тоді просто не було. Всі мови були строго формальні, мали суворий синтаксис і не допускали невизначеності.

Типи, змінні та їх використання

Момент дуже важливий. Типізація та опис змінних - найважливіша складова програми, програміст не може написати працює алгоритм, поки не укладе реальне різноманіття даних в сувору формальну картину змінних, масивів, об'єктів і функцій.
JavaScript: typeof - необхідність чи нові можливості
javascript несе в собі всю накопичену за десятиліття функціональну міць, всі його конструкції ідеально відображають сучасні уявлення про синтаксис і доцільних правилах уложення у нього семантики. Питання в тому, коли це слід робити, коли саме потрібно визначити type text javascript typeof функцією. Власне чистих варіантів type text небагато: символ, рядок і число. Однак роль тексту може грати і об'єкт, і навіть масив з конструкцією array.join(), яка з'єднує всі його елементи в єдиний text, тобто в один рядок.
Банальне твердження: все кругом є type text, і javascript typeof функція має в потрібний час виконати потрібну визначення типу. Це так, але на практиці все виходить інакше. javascript typeof object видасть одне і те ж значення у всіх трьох випадках: var aaa = {};
Res = typeof ( aaa );
Res += '/' + typeof window . document ;
Res += '/' + typeof ( document . forms [0]); результат: object/object/object Використання функції може бути в форматі typeof(aaa) і форматі typeof aaa - це не суттєво, проте у всіх варіантах відповідь дано, але він рівним рахунком нічого не означає!

Невизначеність переходить в визначеність

Програмування властива особлива динаміка: воно настільки стрімко летить вперед, що шкала руху безперервно розширюється. Рахунок йде на місяці, тижні або дні, а деколи навіть на годинник. У конкретних задачах динаміка формування алгоритму розв'язання настільки стрімка і вимоглива до безперервності, що вихід програміста з робочого стану може відкинути рішення на день, тиждень і більший термін. Природне рішення javascript typeof і практика об'єктно-орієнтованого програмування, яке в даному синтаксисі дещо відрізняється від сформованого в суміжних сучасних мовах, переносить центр ваги на об'єкт. Дуже характерний момент: мова стає конструкцією, яка містить семантику, а не набором синтаксичних норм.
JavaScript: typeof - необхідність чи нові можливості
Прості типи даних не потребують у визначенні свого типу, точніше використання javascript typeof цілком достатньо. У разі потреби середовище виконання сама дбає про належні перетвореннях, але щодо об'єктів javascript typeof дає самий розумний відповідь: це об'єкт і проблема його типу - його турбота! Така логіка для класичного уявлення про програмування важко воспринимаема, але це реальне положення правильних речей. Турбота об'єкта - визначити свій тип, проявити свої властивості й виконувати свої методи. Програмування отшлифовало свій синтаксис і з кожним моментом часу переносить центр ваги з синтаксису у формовану програмістом семантику: систему його об'єктів, які виконують рішення поставленої задачі.


Схожі поради

Публікації
Корисні поради - поради.pp.ua

Якщо ви використовуєте матеріали з сайту,посилання на сайт Обов'язкове!!!.