with 拓展作用域

image.png

  1. var message = "Hello World"
  2. // with语句: 可以形成自己的作用域
  3. var obj = {name: "why", age: 18, message: "obj message"}
  4. function foo() {
  5. console.log(message) // "Hello World",这里是一层一层向上查找,直到找到最外层全局
  6. function bar() {
  7. with(obj) { // 给里面的代码一个作用域obj
  8. console.log(message) // "obj message" ,优先对给定的作用域内查找
  9. }
  10. }
  11. bar()
  12. }
  13. foo()

严格模式下,无法使用

===================

eval 执行字符串

image.png

image.png