Eloquent JavaScript中的奇怪变量初始化

时间:2018-02-09 10:10:00

标签: javascript node.js require

我开始阅读section on Node.js在线副本中的Eloquent JavaScript(BTW,一本写得很好的书)。所有示例都使用以下构造来捕获CREATE DOMAIN T AS double precision; CREATE TABLE Sensors( id smallserial PRIMARY KEY NOT NULL UNIQUE, position T NOT NULL, name text NOT NULL ); CREATE TABLE raw_sensor_data( id bigserial PRIMARY KEY NOT NULL UNIQUE, time timestamp NOT NULL, readout T NOT NULL, idSensor smallint references Sensors(id) NOT NULL ); 调用的结果:

require()

如果我尝试在node.js 8.9.3 64位中重现这一点,则生成的const {fs} = require("fs"); 变量未定义。一个更常见的结构:

fs

代替返回一个可用的变量。

我的问题。我错过了一些明显的东西? (也许我只需要从头开始阅读这本书......)。第一个构造给出了哪些好处而不是更正常的变量定义?谢谢!

1 个答案:

答案 0 :(得分:1)

在ES6中,你可以破坏这样的对象:

const obj = {first: 1, second: 2};
const {first, second} = obj;

console.log(first,second); // 1 2

同样,节点的fs有一个成员readFile正在被使用,如:

const {readFile} = require('fs');