当前位置: 首页 > 面试题库 >

从内存中的字符串加载node.js模块

曾华翰
2023-03-14
问题内容

如果我将文件的内容作为字符串存储在内存中而不将其写出到磁盘,该如何请求文件?这是一个例子:

// Load the file as a string
var strFileContents = fs.readFileSync( "./myUnalteredModule.js", 'utf8' );

// Do some stuff to the files contents
strFileContents[532] = '6';

// Load it as a node module (how would I do this?)
var loadedModule = require( doMagic(strFileContents) );

问题答案:
function requireFromString(src, filename) {
  var Module = module.constructor;
  var m = new Module();
  m._compile(src, filename);
  return m.exports;
}

console.log(requireFromString('module.exports = { test: 1}'));

在module.js中查看_compile,_extensions和_load



 类似资料:
  • 问题内容: 相反,如果不从文件加载xml,如何从字符串加载呢? 问题答案: 您的XML字符串在哪里。有关更多信息,请参见MSDN文章。

  • 从这里可以清楚地看到,在Java中组成

  • 是否可以从base64字符串创建QIcon? 我看到我们可以将base64字符串加载到QByteArray中。我看到我们可以从QPixMap创建一个QIcon。 我尝试了以下方法: 什么都没显示出来。 PS:这里可以试试base64图像。

  • 问题内容: 我在字符串中有一个完整的XML文档,想要一个对象。Google会产生各种垃圾。什么是最简单的解决方案?(在Java 1.5中) 解决方案 感谢Matt McMinn,我决定完成此实现。对我来说,它具有适当级别的输入灵活性和异常粒度。(很高兴知道错误是来自格式错误的XML-还是来自错误的IO- 。) 问题答案: 在Java 1.5中,这对我有效-我去除了一些特殊的可读性。

  • 我有一个位于Azure Data Lake Store上的文件,我正在编写一个apiendpoint以将该文件的内容作为字符串检索。我遇到的问题是,当我尝试读取流时,我得到一个空字符串。这是我正在使用的: 目前,返回文件的响应工作正常,我可以在PC上打开文件并读取其内容。使用StreamReader返回文件内容的响应返回空字符串。

  • 我在Java中有一个包含字符串的对象。我很好奇字符串的内存使用是如何工作的。我试图优化我的程序的内存使用,应用程序将有大约10000个这样的对象。对于像“Hello World”这样的字符串,内存使用量是多少?