JavaScript для начинающих здесь. Я хотел бы написать базовую функцию, которая берет путь к локальному текстовому файлу и возвращает его содержимое. Мне известно, что этот вопрос задавался примерно 1000 раз, например здесь . Но каждый ответ отличается друг от друга, я пробовал несколько, и они, кажется, не работают. Немного погуглив, я смог найти следующее решение
function readTextFile(path) {
var reader = new FileReader();
reader.onload = function(event) {
var contents = event.target.result;
console.log("File contents: " + contents);
};
reader.onerror = function(event) {
console.error("File could not be read! Code " + event.target.error.code);
};
var file = new File([path], { type: 'plain/text' });
reader.readAsText(file);
return contents
}
Однако по какой-то причине он выводит сам путь, а не его содержимое. Пожалуйста, предложите, как этот код можно исправить, укоротить, улучшить.
Я также пробовал извлечь, но получил печально известную ошибку запроса кросс-источника, которую я не мог понять, как ее легко решить.
РЕДАКТИРОВАТЬ :
Хорошо, я добавлю еще несколько строк, чтобы прояснить ситуацию
index.html:
<input type="file" id="jsonAddressInput" value="enter address here">
script.js
function myFunction() {
var addressField = document.getElementById("jsonAddressInput");
var addressText = addressField.value;
console.log(addressText);
var textContentsOfFile = readTextFile(addressText)
//console.log(textContentsOfFile)
}
function readTextFile(path) {
var reader = new FileReader();
reader.onload = function(event) {
var contents = event.target.result;
console.log("File contents: " + contents);
};
reader.onerror = function(event) {
console.error("File could not be read! Code " + event.target.error.code);
};
var file = new File([""], path, { type: 'plain/text' });
reader.readAsText(file);
return contents
}
Было упомянуто, что я могу использовать результаты для получения содержимого файла. Подскажите пожалуйста как исправить