Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将文本文件的内容读取为Javascript?_Javascript_Text Files_Eslint_Filereader_Textreader - Fatal编程技术网

如何将文本文件的内容读取为Javascript?

如何将文本文件的内容读取为Javascript?,javascript,text-files,eslint,filereader,textreader,Javascript,Text Files,Eslint,Filereader,Textreader,我想在javascript中编写一个函数来读取文本文件,如果它在该文本文件中包含任何javascript函数,那么我的函数将作为javascript读取 比如: 上面的函数位于文本文件中,我想将其作为javascript读取。目前,我将其作为一个字符串来阅读,但希望从中获得true的输出 编辑以更好地演示。这是我使用eval()后的函数 实际上,我正在为编码约定创建一个规则,比如如果函数返回布尔值,那么它应该以“is/has”开头。Like const isFuncTrue=()=>true;没

我想在javascript中编写一个函数来读取文本文件,如果它在该文本文件中包含任何javascript函数,那么我的函数将作为javascript读取

比如:

上面的函数位于文本文件中,我想将其作为javascript读取。目前,我将其作为一个字符串来阅读,但希望从中获得true的输出

编辑以更好地演示。这是我使用eval()后的函数

实际上,我正在为编码约定创建一个规则,比如如果函数返回布尔值,那么它应该以“is/has”开头。Like const isFuncTrue=()=>true;没有在Eslint中定义规则

两种方法

  • eval(jsstr)
    -不推荐
  • 脚本:
  • 浏览器中的示例-如果没有DOM,则不会运行

    conststr=`consttoberead=()=>true//此函数位于文本文件中`
    const scr=document.createElement(“脚本”)
    scr.textContent=str;
    document.body.appendChild(scr)
    
    console.log(toBeRead())
    您在找什么?我使用了eval(),但仍然没有从文本文件中定义的函数中得到返回。我正在逐行阅读文本文件,因为它可能包含更多的功能。您能否演示您的尝试,并具体说明它是如何工作的?您想做什么?大局如何?这是XY问题吗?为什么文本文件中有JavaScript?这是node.js、浏览器还是其他东西?这是因为
    eval('x=5')
    -->5。但是
    eval('const x=5')
    -->未定义。使用DOM,但不是在我的情况下:(JSDom.js可能?是的。可能这就是问题所在。如果我们从real arrow函数中修剪函数(toBeRead)名称后,也将其作为字符串/文本获取,还有其他方法吗?
    const toBeRead = () => true; //This function is in text file
    
     function readSingleFile(evt) {
      var f = evt.target.files[0];
      if (f) {
        var r = new FileReader();
        r.onload = function (e) {
          var contents = e.target.result;
          var ct = r.result;
          var words = ct.split("\n");
          let array = [];
          words.map((word) => {
            if (word.substring(0, 6) === "const ") {
              if (word.includes("=>")) {
                if (word.includes("=")) {
                  alert(word);       //It shows const toBeRead=()=>true;
                  alert(eval(word)); // It shows undefined
                  array.push(word);
                }
              }
            }
            return array;
          });
          alert(array);
        };
        r.readAsText(f);
      } else {
        alert("Failed to load file");
      }
    }