javascript - 如何将变量存储在单独的 JS/JSON 文件中
问题描述
所以我有一个主 JS 文件,我的所有函数都在其中,并且我正在处理对象,准确地说是一组对象。我希望将整个数组加上其余变量移动到单独的文件(JS 或 JSON)中,以获得更清晰的代码。我试图创建 object.js,然后在 html 文件上添加一个脚本标记,但它不起作用。有什么帮助吗?提前致谢。
这是主要的js文件:
function randomize() {
var contArray = [],
j = 0,
continentListArray = [];
for (var i = 0; i < 7; i++) {
if (continent[i] == "0") contArray.push("EU", "AS", "NA", "SA", "AF", "OC");
if (continent[i] == "1") contArray.push("EU");
if (continent[i] == "2") contArray.push("AS");
if (continent[i] == "3") contArray.push("NA");
if (continent[i] == "4") contArray.push("SA");
if (continent[i] == "5") contArray.push("AF");
if (continent[i] == "6") contArray.push("OC");
}
while (j <= contArray.length) {
for (var i = 0; i < 9; i++) {
if (list[i].continent == contArray[j]) {
continentListArray.push(list[i]);
}
}
j++;
}
RandomNo = Math.floor(Math.random() * continentListArray.length);
localStorage.setItem(
"name",
JSON.stringify(continentListArray[RandomNo].name)
);
document.getElementById("countryname").innerHTML =
continentListArray[RandomNo].name;
localStorage.setItem("latitude", continentListArray[RandomNo].lat);
localStorage.setItem("longitude", continentListArray[RandomNo].lng);
}
这是变量js文件
let list = [
{
name: "Chocolate Hills, Philipines",
lat: "9.839523963227087",
lng: "124.17690138495948",
continent: "AS",
},
{
name: "Lake Louise, US",
lat: "51.17367962051471",
lng: "-115.58264234807032",
continent: "NA",
},
{
name: "Chaminha, Portugal",
lat: "41.875632862726725",
lng: "-8.840761006671405",
continent: "EU",
},
{
name: "Lake Bed, Slovenia",
lat: "46.36246859575214",
lng: "14.099583668957619",
continent: "EU",
},
{
name: "St Peters Pool, Malta",
lat: "35.83324835725186",
lng: "14.562450320981132",
continent: "EU",
},
{
name: "Trælanípa, Faroe Islands",
lat: "62.02386522710074",
lng: "-7.239363099999999",
continent: "EU",
},
{
name: "Flat open beach, Tuvalu",
lat: "-7.245395487392974",
lng: "177.14575319695675",
continent: "AS",
},
{
name: "Bouma National Heritage Park, Fiji",
lat: "-16.826590105942557",
lng: "-179.87305025407966",
continent: "NA",
},
{
name: "Antwerp, Belgium",
lat: "51.216200",
lng: "4.417700",
continent: "EU",
},
];
解决方案
您必须创建一个名为 data.json 的文件,然后将所有数据放入其中。不要忘记将所有数据转换为正确的 json 语法。
将其导入您的反应组件后(从“您的 json 路径”导入数据)。
推荐阅读
- java - 仅使用迭代器返回字符串数组
- java - 如何对不抛出任何异常的 catch 块进行单元测试
- javascript - 如何启用禁用在java字符串中作为html接收的锚标记
- sql - 基于postgresql中先前列值的case语句条件
- hive - Hive 分区表 - 尝试将数据从一个表加载到我的 Hive 中的分区表并得到 [错误 10044]*
- java - 为什么我在尝试注册帐户时会收到错误消息?
- mongodb - 如何使用 `mongorestore` 使用 TAR.GZ 文件恢复数据库
- typescript - 如何扩展现有 npm 模块的类型定义?
- python - 对于以下模式,PySpark regexp_replace 无法按预期工作
- c - 连续获得 k 个相等值的有效方法