Page 23 - 6105
P. 23

Інакше кажуть, що «плюс виробляє конкатенацію (додавання) рядків».

                      Якщо хоча б один аргумент є рядком, то другий буде також перетворений до


               рядка!
                      Причому  не  важливо,  праворуч  або  ліворуч  знаходиться  операнд-рядок,  в


               будь-якому випадку нестроковий аргумент буде перетворений. Наприклад:

                      alert ( '1' + 2); // "12"

                      alert (2 + '1'); // "21"

                      Це приведення до рядка - особливість виключно бінарного оператора "+".

                      Інші арифметичні оператори працюють тільки з числами і завжди приводять

               аргументи до числа.

                      Наприклад:

                      alert (2 - '1'); // 1

                      alert (6 / '2'); // 3

                      Перетворення до числа, унарний плюс +

                      Унарний, тобто застосований до одного значення, плюс нічого не робить з

               числами:

                      alert (+1); // 1


                      alert (+ (1 - 2)); // -1

                      Як видно, плюс нічого не змінив у виразах. Результат  - такий же, як і без

               нього.  Проте,  він  широко  застосовується,  так  як  його  «побічний  ефект»  -

               перетворення значення в число.

                      Наприклад, всі значення отримані з HTML-полів або від користувача мають

               рядковий  тип.  Якщо  виникне  потреба  їх  додати,  то  бінарний  плюс  складе  їх  як

               рядки:

                      var apples = "2";

                      var oranges = "3";

                      alert  (apples  +  oranges);  //  "23",  так  як  бінарний  плюс

               складає рядка

                                                                22
   18   19   20   21   22   23   24   25   26   27   28