1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-30 11:16:38 -05:00
denoland-deno/std/node/README.md

85 lines
1.6 KiB
Markdown
Raw Normal View History

2019-11-12 15:51:14 -05:00
# Deno Node compatibility
This module is meant to have a compatibility layer for the
[NodeJS standard library](https://nodejs.org/docs/latest-v12.x/api/).
2019-11-12 15:51:14 -05:00
**Warning**: Any function of this module should not be referred anywhere in the
deno standard library as it's a compatibility module.
## Supported Builtins
- [ ] assert
- [ ] buffer
- [ ] child_process
- [ ] cluster
- [ ] console
- [ ] crypto
- [ ] dgram
- [ ] dns
- [x] events
- [x] fs _partly_
- [ ] http
- [ ] http2
- [ ] https
- [x] module
- [ ] net
- [x] os _partly_
- [x] path
- [ ] perf_hooks
- [x] process _partly_
2020-03-14 16:43:49 -04:00
- [x] querystring
- [ ] readline
- [ ] repl
- [ ] stream
- [ ] string_decoder
- [ ] sys
- [x] timers
- [ ] tls
- [ ] tty
- [ ] url
- [x] util _partly_
- [ ] ~~v8~~ _can't implement_
- [ ] vm
- [ ] worker_threads
- [ ] zlib
* [x] node globals _partly_
### Deprecated
These builtins are deprecated in NodeJS v13 and will probably not be polyfilled:
- constants
- domain
- freelist
- punycode
### Experimental
These builtins are experimental in NodeJS v13 and will not be polyfilled until
they are stable:
- async_hooks
- inspector
- policies
- report
- trace_events
- wasi
## CommonJS Module Loading
`createRequire(...)` is provided to create a `require` function for loading CJS
2020-04-30 10:00:02 -04:00
modules. It also sets supported globals.
```ts
import { createRequire } from "https://deno.land/std/node/module.ts";
2020-04-20 14:30:52 -04:00
const require = createRequire(import.meta.url);
// Loads native module polyfill.
2020-04-20 14:30:52 -04:00
const path = require("path");
// Loads extensionless module.
2020-04-20 14:30:52 -04:00
const cjsModule = require("./my_mod");
// Visits node_modules.
2020-04-20 14:30:52 -04:00
const leftPad = require("left-pad");
```