【问题标题】:Read txt file data into javascript array将txt文件数据读入javascript数组
【发布时间】:2013-02-24 19:54:39
【问题描述】:

我有一个脚本,可以按顺序将 url 放入一个 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>

我得到了一个包含 url 列表的 txt 文件。该文件中的 url 写在一列中(1 列,每个 url 从新行开始)。如何将 javascript 中的“var 数组”替换为该 txt 文件的内容?

【问题讨论】:

    标签: javascript


    【解决方案1】:

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

    $.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 用于考虑所有不同的可能行尾。
    【解决方案2】:

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

    $.get('file.txt');
    

    如果您将 url 解析为 JSON 格式,那么当您收到它时,您可以轻松地使用这些 url。

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

    【讨论】:

      猜你喜欢
      • 2012-10-28
      • 2014-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-17
      • 1970-01-01
      相关资源
      最近更新 更多