Как импортировать данные из локального файла в массив для использования в javascript? - PullRequest
0 голосов
/ 21 марта 2019

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

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

Проблема в том, что у меня есть этот огромный список атрибутов, и я хочу сохранить их в массиве.Моя цель состояла в том, чтобы поместить все эти атрибуты в файл .txt и каким-то образом сделать что-то вроде

let data = readFile('./attributes.txt');

типа.У меня не установлены какие-либо сумасшедшие библиотеки, я не выполняю серверную работу и не нуждаюсь в том, чтобы пользователь даже знал, что файл существует, это был всего лишь способ сохранить данные моего массива менее отвратительным образом и сохранитьмой .js файл чище и проще для понимания.Это вообще возможно?Все остальные сообщения, которые я видел, использовали библиотеки, которые я не могу заставить работать, или заставляли пользователя выбирать файл самостоятельно или что-то в этом роде.

Любая помощь будет означать мир, спасибо заранее!

1 Ответ

0 голосов
/ 21 марта 2019

Я не совсем уверен, насколько огромен огромный в этом контексте, но, если предположить, что в этом нет ничего слишком сумасшедшего, и вы находитесь в среде узлов, следующее решение, вероятно, сделает то, что вы ищете.

Я предполагаю, что текстовый файл, где каждый атрибут находится на новой строке.В качестве дополнительного примечания: если мы говорим о серьезно больших файлах, следующее решение может быть не слишком эффективным.

Не стесняйтесь, дайте мне знать, если вам нужна дополнительная помощь, или если что-то неясно.


// Read the file and convert it into an array
const fs = require("fs");
const contents = fs.readFileSync("attributes.txt");
const arr = contents.split("\n");

// Pick a random element from said array, and log it
const randomElement = arr[Math.floor(Math.random() * arr.length)];
console.log(randomElement);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...