У меня есть объект класса, который, как я думал, работал прошлой ночью.Но теперь я пытаюсь проверить мой метод set Hash, поэтому я делаю: blah = new HashTable;и он говорит, что HashTable не определен.
У меня есть другой файл, который здесь не связан, и все его переменные также отображаются как неопределенные (в консоли).Клянусь, я получил эту работу прошлой ночью, хотя я так раздражен.
Я получаю сообщение об ошибке, которое, возможно, я раньше не замечал, но оно говорит
ОШИБКА : Ошибка синтаксического анализа: ключевое слово 'класс' зарезервировано class HashTable
JSLint (2) Ожидается, что идентификатор и вместо этого увидят 'class' .Остановка.(Отсканировано 4%).
Что я делаю не так?Кто-нибудь, пожалуйста, помогите.
Мое желание, просто иметь возможность протестировать мой код JavaScript в консоли, чтобы убедиться, что все работает.Я попробовал фрагмент Google Chrome, и в нем есть ошибки.Я попробовал codepen, и это песочница, поэтому она не работает должным образом в консоли, сейчас я пробую скобки, и это также не позволяет мне тестировать в консоли.Очень расстраиваюсь.
class HashTable {
constructor(size){
this.keyMap = new Array(size);
}
function _hash(key) {
let total = 0;
let prime = 31
for (let i = 0; i < Math.min(key.length, 100); i++) {
let char = key[i];
let value = char.charCodeAt(0) - 96;
total = (total * prime + value) % this.keyMap;
}
return total;
}
function set(key){
hashNumber = this._hash(key);
return hashNumber;
}
}
-
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src = "app.js"></script>
<script src = "hash.js"></script>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1>Please work</h1>
</body>
</html>