将文本文件数据读入javascript数组

时间:2013-02-24 19:54:40

标签: javascript

我有一个脚本按顺序将网址放入一个iframe:

 <script type="text/javascript">
    $(document).ready(function(){   
    var array = ['http://www.example1.come', 'http://www.example2.com', 'http://www.example3.com'];
    var beforeLoad = (new Date()).getTime();
    var loadTimes = [];
    $('#1').on('load', function() {
       loadTimes.push((new Date()).getTime());                  
       $('#1').attr('src', array.pop());
        if (array.length === 0) { 
            $.each(loadTimes, function(index, value) {
               $("#loadingtime"+index).html(value - beforeLoad); 
            });
        }
    }).attr('src', array.pop());
    });
    </script>

我有一个带有网址列表的txt文件。该文件中的URL写在一列(1列,每行url starfs from new line)。如何将javascript中的'var array'替换为该txt文件的内容?

2 个答案:

答案 0 :(得分:3)

这是基本要点,您需要在我放置评论的文件被检索后嵌入您想要运行的任何代码。

$.get("your_url", 
       function(data) {
           var array = data.split(/\r\n|\r|\n/) //regex to split on line ending
           var beforeLoad = (new Date()).getTime();
           var loadTimes = [];
           //.... rest of your code here
       }
);

请注意,如果文件不存在,则不执行任何错误处理,您可能需要重写它以使用jQuery's "Promise" interface described here.

答案 1 :(得分:0)

使用jQuery的get方法直接从服务器请求文件,或者使用get来调用php脚本,该脚本将文件解析为友好的格式,如JSON。

$.get('file.txt');

如果您将网址解析为JSON格式,那么当收到该网址时,您可以轻松使用网址。

$.get('file.txt', function(data){
    obj = JSON.parse(data);
    // ....
});