javascript中定义一维数组,如何从TXT文件中为其赋值?

通常,在JS中定义一维数据可以这样写:
var name_list = new Array("张三","李四","王二","刘五","小花");
问题:
已经建立了一个TXT文件,格式为"张三","李四","王二","刘五","小花",或每个人名一行,即如下格式:
张三
李四
王二
刘五
小花
请问:如何上面JS函数new Array括号里的内容,自动提取TXT文件来填充呢?
不胜感激!跪求!

其实只要读取成字符串用 split("\n") 切割就可以了。

因为你没有说哪个平台,那就拿浏览器举个例子:

<!DOCTYPE html>
<html>
<body>
  <input type="file" id="input">
  <script>
  (function(){
    var input = document.querySelector('#input');

    input.addEventListener('change', function(e){
      handFile(e.target.files[0]);
    });

    function handFile(file){

      var reader = new FileReader();

      reader.onload = function(e){
        console.log(e.target.result.split("\n"));
      };

      reader.readAsText(file);
    }
  })();
  </script>
</body>
</html>

浏览器需要<input>标签读取文件,node.js 的话可以从命令行参数 process.argv 来传入文本

想要在脚本里面读取文本文件可以用 fs 模块。

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-11-22
在win下,纯jscript脚本可以用FSO进行文件读写,
比如,在一个test.js文件中写上
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f = fso.OpenTextFile("c:\\文件名.txt", ForReading, false); //读文件
var s = f.ReadLine();读一行

如果要在浏览器中读写,需要大大降低自定义安全级别,允许使用本地ActiveX对象。
通常这么做是非常危险的。。

本回答被网友采纳
相似回答