⊗jsPmMCVD 496 of 505 menu

Конфликти с променливи в JavaScript

Да предположим, че имаме HTML страница index.html, в която в таг script създавате променлива str и я извеждате на екрана:

<html> <head> <script> let str = 'script text'; alert(str); // ще изведе 'script text' </script> </head> <body> ... </body> </html>

Да предположим, че имаме и файл script.js, в който също се задава променлива str:

let str = 'file text';

Нека сега нашият файл script.js бъде свързан към страницата index.html по следния начин:

<html> <head> <script> let str = 'script text'; </script> <script src="script.js"></script> <script> alert(str); </script> </head> <body> ... </body> </html>

Тъй като променливата str съществува както във файла index.html, така и във файла script.js, ще възникне конфликт, в който ще надделее променливата, която е написана по-надолу, тоест променливата от файла script.js. Тоест нашият код ще изведе 'file text', а не 'script text', както очакваме.

Проблемът всъщност е много сериозен. В реалния сайт най-често ще имате няколко файла с вашите скриптове, освен това, вие ще свързвате някакви сторонни плъгини. В този случай променливите и функциите на един файл могат да влизат в конфликт с променливите и функциите на друг файл.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне