ES5的几个概念

本文介绍了ES5的严格模式,旨在消除JavaScript的不安全和不一致之处,通过在代码中启用"use strict"来实现。严格模式下,变量必须使用var声明,禁止函数的this指向window,并规定了对象不能有重复属性。此外,还讲解了JSON的stringify和parse方法用于对象和数组与JSON之间的转换,以及Object的call、apply和bind方法的应用。
摘要由CSDN通过智能技术生成

严格模式

ES5有两种运行模式, 一种为正常模式(混杂模式), 另一种运行模式: 严格模式(strict mode), 这种模式使得JavaScript在更严格的语法条件下运行

1.目的: 消除js语法的一些不合理,不严谨之处,减少一些怪异行为,消除代码运行的一些不安全之处, 为代码的安全运行保驾护航, 为未来的新版本做好铺垫
2.使用: 在全局或函数的第一行定义"use strict"
3.作用: 必须使用var声明变量,
  禁止自定义函数的this只想window,
  创建eval作用域,
  对象不能有重名的属性

'use strict'; //在全局或函数内第一行书写
//1.变量必须使用var 定义 否则报错
str="xxx";
//2.函数内的this指向不再是window
function Person(name,age) {
   
        console.log(this);//undefined
        this.name=name;//相当于设置undefined.name =name 报错
        this.age=age;
 }
//3.让eval有自己的作用域
 var str =123;
 eval('var str=456;alert(str)');//456
 alert(str);//123
//4.对象不能用重名属性
var obj ={
   
        username:'kobe',
        username:'zs'
 }
 console.log(obj);//运行时没有报错,不过编辑器内有提示 最好别这么写就是了
//5.不能使用arguments.callee
function factorial(num){
   
    if(num<=1) renturn 1;
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值