Blogger Information
Blog 30
fans 1
comment 0
visits 16118
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
node.js中的querystring模块,fs模块与vm虚拟机模块
moon
Original
546 people have browsed it

node.js中的querystring模块

  • querystring 模块提供了用于解析和格式化网址查询字符串的实用工具。 可以使用以下方式访问它:const querystring=require("querystring")
  • querystring.parse(str[, sep[, eq[, options]]]),将指定字符串解析为js对象,str参数为需要解析的字符串, sep分隔符1,eq分隔符2例如下列代码
  1. const qs = require('querystring')
  2. let string = 'name-wangyi#pass-123#sex-0'
  3. let obj = qs.parse(string, '#', '-')
  4. console.log(obj);

上述代码执行结果如下
node1

  • querystring.stringify(obj[, sep[, eq[, options]]]),将js对象序列化成字符串,例如下列代码
  1. querystring.stringify({ foo: 'bar', baz: ['qux', 'quux'], corge: '' });
  2. // 返回 'foo=bar&baz=qux&baz=quux&corge='
  3. querystring.stringify({ foo: 'bar', baz: 'qux' }, ';', ':');
  4. // 返回 'foo:bar;baz:qux'

node.js中的fs模块

  • fs 模块支持以标准 POSIX 函数建模的方式与文件系统进行交互。
  • 要使用基于 promise 的 API:
  1. import * as fs from 'fs/promises';
  • 要使用回调和同步的 API:
  1. import * as fs from 'fs';

例如下列代码 基于使用promise的api

  1. import { unlink } from 'fs/promises';
  2. try {
  3. await unlink('/tmp/hello');
  4. console.log('successfully deleted /tmp/hello');
  5. } catch (error) {
  6. console.error('there was an error:', error.message);
  7. }

node.js中的vm模块

  • vm 模块允许在 V8 虚拟机上下文中编译和运行代码。 vm 模块不是安全的机制。 不要用它来运行不受信任的代码。
    例如下列代码
  1. const vm = require('vm');
  2. const x = 1;
  3. const context = { x: 2 };
  4. vm.createContext(context); // 上下文隔离化对象。
  5. const code = 'x += 40; var y = 17;';
  6. // `x` 和 `y` 是上下文中的全局变量。
  7. // 最初,x 的值为 2,因为这是 context.x 的值。
  8. vm.runInContext(code, context);
  9. console.log(context.x); // 42
  10. console.log(context.y); // 17
  11. console.log(x); // 1; y 未定义。
  • vm.runInContext(code, contextifiedObject[, options])vm.runInContext() 方法编译 code,在 contextifiedObject 的上下文中运行它,然后返回结果。 运行代码无权访问本地作用域。 contextifiedObject 对象必须之前已经使用 vm.createContext() 方法上下文隔离化,例如下列代码
  1. const vm = require('vm');
  2. const contextObject = { globalVar: 1 };
  3. vm.createContext(contextObject);
  4. for (let i = 0; i < 10; ++i) {
  5. vm.runInContext('globalVar *= 2;', contextObject);
  6. }
  7. console.log(contextObject);
  8. // 打印: { globalVar: 1024 }
Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post