with-eval-严格模式-面向对象

with

可以形成自己的作用域

 

eval函数

eval是一个特殊的函数,它可以将传入的字符串当作JavaScript代码来运行

var jsString = 'var message = "Hello World";console.log(message);'

eval(jsString)

严格模式

开启严格模式

 那么如何开启严格模式呢?严格模式支持粒度话的迁移

  • 可以支持再js文件中开启严格模式
  • 也支持对某一个函数开启严格模式

 严格模式限制

  1. 意外创建全局变量
  2. 不允许函数有相同的参数名称
  3. 静默错误
  4. 不允许使用原先的八进制格式
  5. with语句不允许使用
  6. eval函数不会向上引用变量
  7. 自执行函数(默认绑定)会指向undefined
  8. setTimeout的this

面向对象

面向对象是现实的抽象方式

JavaScript的面向对象

 对对象属性的操作

 参考文档:Object.defineProperty() - JavaScript | MDNObject.defineProperty() 方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性,并返回此对象。https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty

存取属性描述符

  1. 隐藏某一个私有属性不希望直接被外界使用和赋值
  2. 如果我们希望截取某一个它访问和设置值的过程时,也会使用存储属性描述符
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值