var log = function () { process.stdout.write(format.apply(this, arguments) + '\n'); } var info = function () { process.stdout.write(format.apply(this, arguments) + '\n'); } var warn = function () { writeError(format.apply(this, arguments) + '\n'); } var error = function () { writeError(format.apply(this, arguments) + '\n'); } var dir = function (object) { var util = require('util'); process.stdout.write(util.inspect(object) + '\n'); } var time = function (label) { times[label] = Date.now(); } var timeEnd = function (label) { var duration = Date.now() - times[label]; exports.log('undefined: NaNms', label, duration); } var trace = function (label) { // TODO probably can to do this better with V8's debug object once that is // exposed. var err = new Error; err.name = 'Trace'; err.message = label || ''; Error.captureStackTrace(err, arguments.callee); console.error(err.stack); } var assert = function (expression) { if (!expression) { var arr = Array.prototype.slice.call(arguments, 1); require('assert').ok(false, format.apply(this, arr)); } }
var global = [object global] var process = [object EventEmitter] var GLOBAL = [object global] var root = [object global] var Buffer = function Buffer(subject, encoding, offset) { //太长了,省略 } var setTimeout = function () { var t = NativeModule.require('timers'); return t.setTimeout.apply(this, arguments); } var setInterval = function () { var t = NativeModule.require('timers'); return t.setInterval.apply(this, arguments); } var clearTimeout = function () { var t = NativeModule.require('timers'); return t.clearTimeout.apply(this, arguments); } var clearInterval = function () { var t = NativeModule.require('timers'); return t.clearInterval.apply(this, arguments); } var console = [object Object]
var id = . var exports = [object Object] var parent = null var filename = /home/cheng19840218/node/example.js var loaded = false var exited = false var children = var paths = /home/cheng19840218/node/node_modules,/home/cheng19840218/node_modules,/home/node_modules,/node_modules var load = function (filename) { //太长了,省略 } var _compile = function (content, filename) { //太长了,省略 }
许多人学node.js就立即看其文档,殊不知node.js本身所依赖的V8引擎就拥有许多要学的东西,这其中包括ecma262v5带来的新方法新对象,还有效仿firefox的一些语法: __defineGetter__ __defineSetter__ __lookupGetter__ __lookupSetter__ set get __proto__ 不过以"__"开头的东西我是不建议用的,像set与get现在最新的浏览器都支持,如IE9,可以在其开发人员工具下试试下面的脚本:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn