Document that 'Buffer' is a global variable
[platform/upstream/nodejs.git] / doc / api / globals.markdown
1 ## Global Objects
2
3 These object are available in all modules. Some of these objects aren't
4 actually in the global scope but in the module scope - this will be noted.
5
6 ### global
7
8 The global namespace object.
9
10 In browsers, the top-level scope is the global scope. That means that in
11 browsers if you're in the global scope `var something` will define a global
12 variable. In Node this is different. The top-level scope is not the global
13 scope; `var something` inside a Node module will be local to that module.
14
15 ### process
16
17 The process object. See the [process object](process.html#process) section.
18
19 ### console
20
21 Used to print to stdout and stderr. See the [stdio](stdio.html) section.
22
23 ### Buffer
24
25 Used to handle binary data. See the [buffers](buffers.html) section.
26
27 ### require()
28
29 To require modules. See the [Modules](modules.html#modules) section.
30 `require` isn't actually a global but rather local to each module.
31
32
33 ### require.resolve()
34
35 Use the internal `require()` machinery to look up the location of a module,
36 but rather than loading the module, just return the resolved filename.
37
38 ### require.cache
39
40 Modules are cached in this object when they are required. By deleting a key
41 value from this object, the next `require` will reload the module.
42
43
44 ### require.paths
45
46 An array of search paths for `require()`.  This array can be modified to add
47 custom paths.
48
49 Example: add a new path to the beginning of the search list
50
51     require.paths.unshift('/usr/local/node');
52
53
54 ### __filename
55
56 The filename of the script being executed.  This is the absolute path, and not necessarily
57 the same filename passed in as a command line argument.
58
59 Example: running `node example.js` from `/Users/mjr`
60
61     console.log(__filename);
62     // /Users/mjr/example.js
63
64 `__filename` isn't actually a global but rather local to each module.
65
66 ### __dirname
67
68 The dirname of the script being executed.
69
70 Example: running `node example.js` from `/Users/mjr`
71
72     console.log(__dirname);
73     // /Users/mjr
74
75 `__dirname` isn't actually a global but rather local to each module.
76
77
78 ### module
79
80 A reference to the current module. In particular
81 `module.exports` is the same as the `exports` object. See `src/node.js`
82 for more information.
83 `module` isn't actually a global but rather local to each module.
84
85
86 ### exports
87
88 An object which is shared between all instances of the current module and
89 made accessible through `require()`.
90 `exports` is the same as the `module.exports` object. See `src/node.js`
91 for more information.
92 `exports` isn't actually a global but rather local to each module.
93
94 ### setTimeout(cb, ms)
95 ### clearTimeout(t)
96 ### setInterval(cb, ms)
97 ### clearInterval(t)
98
99 The timer functions are global variables. See the [timers](timers.html) section.