Eloquent JavaScript 中的奇怪变量初始化
Strange variable initialization in Eloquent JavaScript
我开始阅读 section on Node.js in the online copy of Eloquent JavaScript(顺便说一句,一本做得很好的书)。所有示例都使用以下构造来捕获 require()
调用的结果:
const {fs} = require("fs");
如果我尝试在我的 node.js 8.9.3 64 位中重现它,生成的 fs
变量是未定义的。一个更常见的结构:
const fs = require("fs");
而不是 returns 一个可用的变量。
我的问题。我错过了一些明显的东西吗? (也许我只需要从头开始阅读这本书……)。第一个构造比更正常的变量定义有什么好处?谢谢!
在 ES6 中,你可以像这样销毁对象:
const obj = {first: 1, second: 2};
const {first, second} = obj;
console.log(first,second); // 1 2
同样,Node 的 fs
有一个成员 readFile
,其使用方式如下:
const {readFile} = require('fs');
我开始阅读 section on Node.js in the online copy of Eloquent JavaScript(顺便说一句,一本做得很好的书)。所有示例都使用以下构造来捕获 require()
调用的结果:
const {fs} = require("fs");
如果我尝试在我的 node.js 8.9.3 64 位中重现它,生成的 fs
变量是未定义的。一个更常见的结构:
const fs = require("fs");
而不是 returns 一个可用的变量。
我的问题。我错过了一些明显的东西吗? (也许我只需要从头开始阅读这本书……)。第一个构造比更正常的变量定义有什么好处?谢谢!
在 ES6 中,你可以像这样销毁对象:
const obj = {first: 1, second: 2};
const {first, second} = obj;
console.log(first,second); // 1 2
同样,Node 的 fs
有一个成员 readFile
,其使用方式如下:
const {readFile} = require('fs');