Tôi đang cố gắng liệt kê tất cả các biến toàn cục, bao gồm các biến số tham chiếu đến built-in objects.Liệt kê tất cả các biến toàn cục trong Node.js
Trong giao diện điều khiển của Chrome tôi có thể chỉ cần gõ this
và lấy lại tất cả các phím, bao gồm những thứ như String
, Number
vv
Tuy nhiên khi tôi làm điều này trong Node.js tôi nhận được ít hơn nhiều:
> Object.keys(this)
[ 'global',
'process',
'GLOBAL',
'root',
'Buffer',
'setTimeout',
'setInterval',
'clearTimeout',
'clearInterval',
'setImmediate',
'clearImmediate',
'console',
'module',
'require',
'_' ]
> this.eval
[Function: eval]
Trường hợp là this.eval
đến từ đâu?
Hãy thử 'Object.keys (Object.getPrototypeOf (this))' và 'Object.getOwnPropertyNames (this)' (cho các thuộc tính kế thừa và không liệt kê tương ứng) – Bergi
'Object.getOwnPropertyNames (this)' đã thực hiện mẹo, cảm ơn @Bergi! – liadmat
Trong một tệp, tệp được tải dưới dạng mô-đun, trong đó 'this' không phải là đối tượng chung. – Bergi