例如dns.js文件:
exports.EOF = 'EOF';
exports.FILE = 'EFILE';
exports.NOMEM = 'ENOMEM';
那些可以被覆盖,例如。
var dns = require('dns');
dns.EOF = 3;
怎么样:
Object.defineProperty(module.exports, 'EOF',
{ value: 'EOF', enumerable: true});
Object.defineProperty(module.exports, 'EFILE',
{ value: 'EFILE', enumerable: true});
等等。在这种情况下,那么:
'use strict';
var dns = require('./dns');
dns.EOF = 3;
TypeError: Cannot assign to read only property 'EOF' of #<Object>