gpt4 book ai didi

javascript - 从主脚本文件中分离数组

转载 作者:行者123 更新时间:2023-11-30 09:55:32 25 4
gpt4 key购买 nike

我正在编写一个 Javascript 代码,它可以从较小的字符串集生成随机文本。问题是为了使代码易于阅读和扩展,我肯定必须为每个字符串变量使用一行。

类似这样的东西,非常广泛。

var array = [
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
"text",
...
]

var array_b = [
//(the same again)
]

var result = array[math.floor(math.random())] + " " + array_b[math.floor(math.random())]

不用说,这很不舒服。显然,并非不可能习惯;但如果可能的话,我会摆脱那些长数组。

有办法吗?将它们放入不同的文件中,也许从另一个页面的另一个脚本中调用它们?或者什么?

最佳答案

您可以将数组放入 JSON(JavaScript Object Notation) 文件中,然后使用 ajax 请求加载它们

data.json

["text","text","text","text","text","text","text","text","text","text",...]

ma​​in.js

//if using jQuery
jQuery.ajax({
url:"data.json",
dataType:"json"
}).then(function(data){
//'data' will be your array use it
});

//if not using jQuery
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
//parse the JSON text
var data = JSON.parse(xmlhttp.responseText);
//call a function passing it the array
response(data);
}
};
xmlhttp.open("GET", "data.json");
xmlhttp.send();

function response(data){
//data will be your array use it
}

您也可以将它们添加到单独的 js 文件中,然后添加第二个 <script>元素

data.js

var data =["text","text","text","text","text","text","text","text","text","text",...]

ma​​in.html

<head>
<script src="data.js"></script>
<script src="main.js"></script>
</head>

关于javascript - 从主脚本文件中分离数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34214349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com