在现有的javascript函数中包括.txt文件

伊万

我有这个javascript函数,它需要一些变量,我想从一个外部.txt文件中调用它:

<script language="JavaScript">

StartCountDown("1070","08/21/2014 15:32 +0300")
StartCountDown("1071","08/21/2014 16:00 +0300")
StartCountDown("1072","08/21/2014 16:00 +0300")

... rest of the function
</script>

如果会更好

<script language="JavaScript">

**include stuff from variables.txt here**

... rest of the function
</script>

有什么办法吗?谢谢。

梦实验室

选项1:将txt加载到变量中

您可以通过javascript / ajax同步加载.txt文件请记住,您的javascript代码执行将在此时等待,直到文件加载完毕。

var request = new XMLHttpRequest();
request.open('GET', 'text.txt', false);
request.send();
var textfileContent = request.responseText;

您也可以异步执行此操作尽管在这种情况下,您的程序逻辑将不得不等待文件被加载:

var request = new XMLHttpRequest();
request.open('GET', 'text.txt');
request.onreadystatechange = function() {
    if (request.readyState === 4) {
        var textfileContent = request.responseText;
        // continue your program flow here
    }
}
request.send();

从变量执行JavaScript (不推荐使用)

也可以从字符串中评估javascript代码。尽管不建议使用此方法

eval(textfileContent);

选项2:通过脚本包含JavaScript

如果您要加载的是javascript,则另一种解决方案是将脚本标签添加到dom:

var script = document.createElement('script');
script.type = 'text/javascript';
script.src = "text.txt";
document.body.appendChild(script);

选项3:使用json初始化变量(最适合您的需求)

如果您只是加载变量值,那么json可能对您更有意义。创建一个像这样的文本文件:

[
    ["1070","08/21/2014 15:32 +0300"],
    ["1071","08/21/2014 16:00 +0300"],
    ["1072","08/21/2014 16:00 +0300"]
]

在这里阅读有关json语法的信息

而不是像这样加载json文件:

var request = new XMLHttpRequest();
request.open("GET", "json.txt", false);
request.send(null);
var data = JSON.parse(request.responseText);

您的数据现在位于数组中。您可能想循环访问这些值:

for ( var i = 0; i < data.length; i++ ) {
    var entry = data[i];
    var year = entry[0];
    var date = entry[1];
    StartCountDown(year, date);
}

选项4:在运行时合并

如果您有预处理器设置,则可能要使用它来将文件放在一起。或者,unix命令行工具cat可以轻松合并两个文件:

cat file1.txt file2.txt > new.txt

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何覆盖现有的.txt文件

来自分类Dev

如何从现有的TXT文件创建TMX

来自分类Dev

我想从txt文件读取并写入现有的JTable

来自分类Dev

带有.txt文件的文件?

来自分类Dev

不要包括所有的javascript文件轨道

来自分类Dev

如何在Android中将数据添加到现有的.txt文件

来自分类Dev

如何将新行添加到现有的txt文件

来自分类Dev

在R中合并(绑定)现有的pdf文件

来自分类Dev

在现有的vim会话中打开文件(Cygwin / mintty)

来自分类Dev

在现有的SQL Server实例中打开多个文件

来自分类Dev

在C#中压缩现有的TIFF文件

来自分类Dev

在现有的xml文件python中添加元素

来自分类Dev

在现有的SQL Server实例中打开多个文件

来自分类Dev

在C#中压缩现有的TIFF文件

来自分类Dev

函数不写入 txt 文件

来自分类Dev

如何制作一个与另一个txt文件同名的文件,而不覆盖该文件,而是在python中为现有的txt文件添加一个数字?

来自分类Dev

带有 txt 文件的 For 循环

来自分类Dev

Python读取txt文件中的行并写入新的txt文件

来自分类Dev

在python中读取.txt文件

来自分类Dev

在python中读取txt文件

来自分类Dev

从.txt文件中删除引号

来自分类Dev

删除txt文件中的回车

来自分类Dev

打开txt中列出的文件

来自分类Dev

在Python中打开'.txt'文件

来自分类Dev

在C中解析.txt文件

来自分类Dev

从txt文件中获取文本

来自分类Dev

从Java中的txt文件读取

来自分类Dev

fprintf在txt文件中输出')'

来自分类Dev

在txt文件中写入RDD