![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/local/lib/node_modules/browserify/node_modules/vm-browserify/ |
Upload File : |
# vm-browserify emulate node's vm module for the browser [](https://travis-ci.org/browserify/vm-browserify) # example Just write some client-side javascript: ``` js var vm = require('vm'); window.addEventListener('load', function () { var res = vm.runInNewContext('a + 5', { a : 100 }); document.querySelector('#res').textContent = res; }); ``` compile it with [browserify](http://github.com/substack/node-browserify): ``` browserify entry.js -o bundle.js ``` then whip up some html: ``` html <html> <head> <script src="/bundle.js"></script> </head> <body> result = <span id="res"></span> </body> </html> ``` and when you load the page you should see: ``` result = 105 ``` # methods ## vm.runInNewContext(code, context={}) Evaluate some `code` in a new iframe with a `context`. Contexts are like wrapping your code in a `with()` except slightly less terrible because the code is sandboxed into a new iframe. # install This module is depended upon by browserify, so you should just be able to `require('vm')` and it will just work. However if you want to use this module directly you can install it with [npm](http://npmjs.org): ``` npm install vm-browserify ``` # license MIT