| # 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'); | 
 |  | 
 | $(function () { | 
 |     var res = vm.runInNewContext('a + 5', { a : 100 }); | 
 |     $('#res').text(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="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> | 
 |     <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 |