Я проверил некоторые вопросы с похожими проблемами, но не смог справиться с моим, где у меня есть file.js :
'use strict'
function singlyLinkedList() {
if (this ) {
this.head = null
}
}
singlyLinkedList.prototype.append = function(value) {
let node = {
data: value,
next: null
}
if( !this.head ) {
this.head = node
} else {
let pointer = this.head
while( pointer ) {
pointer = pointer.next
}
pointer.next = node
}
}
Который я звоню из index.html :
<!DOCTYPE html>
<html>
<head>
<title> Test </title>
<meta charset="UTF-8">
<script src="file.js"></script>
</head>
<body>
<script>
let linkedList = singlyLinkedList()
let integersArray = [1, 22, 333, 4444]
integersArray.forEach(element => linkedList.append(element))
</script>
</body>
</html>
При переходе по этому HTML-файлу с помощью браузера Chrome и проверке консоли отображается следующее сообщение об ошибке:
Uncaught TypeError: Невозможно прочитать свойство 'append' из undefined
Как это исправить?
Обновление:
Вторая проблема, с которой я столкнулся (возможно, отдельный вопрос?), Заключается в том, что еслиЯ пишу:
function singlyLinkedList() {
this.head = null
}
Я получаю это сообщение об ошибке:
Uncaught TypeError: Невозможно установить свойство 'head' из неопределенного