javascript 基础知识 (待完善)

This 的指向

    1. 普通函数内的this指向全局变量

    2. 构造函数内部this指向新创建出来的对象

    3. 对象方法内的this指向的是调用该方法的对象

    4. call,apply,bind可以改变this的指向

 

POST和GET的区别

  1. GET提交的数据放在URL中,POST则不会。这是最显而易见的差别。这点意味着GET更不安全(POST也不安全,因为HTTP是明文传输抓包就能获取数据内容,要想安全还得加密)
  2. GET回退浏览器无害,POST会再次提交请求(GET方法回退后浏览器再缓存中拿结果,POST每次都会创建新资源)
  3. GET提交的数据大小有限制(是因为浏览器对URL的长度有限制,GET本身没有限制),POST没有
  4. GET可以被保存为书签,POST不可以。这一点也能感受到。
  5. GET能被缓存,POST不能
  6. GET只允许ASCII字符,POST没有限制
  7. GET会保存再浏览器历史记录中,POST不会。这点也能感受到。

总之,两者之间没有本质区别,区别就在于数据存储的位置。各自有适用环境,根据需求选择合适的方法即可。


“use strict” 严格模式

1. ECMAScript 5 引入严格模式('strict mode')概念。通过严格模式,在函数内部选择进行较为严格的全局或局部的错误条件检测,使用严格模式的好处是可以提早知道代码中的存在的错误,及时捕获一些可能导致编程错误的ECMAScript行为。在开发中使用严格模式能帮助我们早发现错误。

2. 设立"严格模式"的目的,主要有以下几个:错误检测、规范、效率、安全、面向未来

  - 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;

  - 消除代码运行的一些不安全之处,保证代码运行的安全;

  - 提高编译器效率,增加运行速度;

  - 为未来新版本的Javascript做好铺垫。

 3.  严格模式影响范围

  • 变量:  var、delete、变量关键字
  • 对象: 只读属性、 对象字面量属性重复申明
  • 函数:参数重名、arguments对象、申明
  • 其他:this、eval、关键字...

4.进入"严格模式"

这个语法从ECMAScript 3 开始支持。向后兼容不支持严格模式的浏览器,他们就当遇到了一个普通字符串,编译时忽略。

"use strict";  

将"use strict"放在脚本文件的第一行,则整个脚本都将以"严格模式"运行。

如果这行语句不在第一行,则无效,整个脚本以"正常模式"运行。

如果不同模式的代码文件合并成一个文件,这一点需要特别注意。

(严格地说,只要前面不是产生实际运行结果的语句,"use strict"可以不在第一行,比如直接跟在一个空的分号后面。) 

 

<script>  
  "use strict";  
  console.log("这是严格模式。");  
</script>  
<script>  
 console.log("这是正常模式。");  
</script>

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值