Может быть, меня немного смущает ваш вопрос, но обо всем по порядку:
<script LANGUAGE="javascript" SRC="source.js"></script>
НЕ читает с компьютера клиента, он читает из веб-контекста, с которого была загружена страница. Если html-страница, которую вы загружаете, например, www.google.com, то src = "source.js" загрузит www.google.com/source.js
.
Если я правильно понимаю ваш вопрос, я думаю, что ответ на ваши вопросы заключается в том, что source.js НЕ читается асинхронно при загрузке веб-страницы. Допустим, source.js содержит только эту строку.
var variable = {};
В index.html у вас есть это:
<script type="text/javascript">
alert(typeof(variable));
</script>
<script type="text/javascript" src="source.js"></script>
<script type="text/javascript">
alert(typeof(variable));
</script>
Затем первое оповещение даст вам «неопределенный», а второе оповещение даст вам «объект». Итак, если вы хотите проверить, загружен ли source.js или нет, вы можете просто выполнить быстрое условие:
if (typeof(variable) != "undefined") { doSomething(); }