Почему объектный литерал загружается, когда in объявлен во внешнем исходном файле, но не при вызове в файле, включающем внешний файл javascript file

#javascript #oop

#javascript #ооп

Вопрос:

Код во внешнем файле является

 var testing = {
    bugtest: function() {
        alert('No Bugs Here');
    }
}
  

В файле php, который я использую

 <script type="text/javascript" src="externalScript.js">
    testing.bugtest();
</script>
  

Но это не сработает, почему?

если я вызываю функцию во внешнем файле, она работает

 var testing = {
    bugtest: function() {
        alert('No Bugs Here');
    }
}
testing.bugtest()
  

это будет работать, но это не то, что я хочу, чтобы это делалось, я хочу иметь возможность вызывать функцию в основном файле? В чем может быть причина этой проблемы?

Ответ №1:

Вы не можете использовать src атрибут и текстовый узел с script элементами.

Они должны быть эксклюзивными, например, по элементу каждый.

Таким образом, ваш HTML будет выглядеть примерно так…

 <script type="text/javascript" src="externalScript.js"></script>
<script type="text/javascript">
    testing.bugtest();
</script>
  

Ответ №2:

Это

 <script type="text/javascript" src="externalScript.js">
testing.bugtest();
</script>
  

неверно. Вы можете либо указать src, либо запустить встроенный код.