DOCTYPE 严格模式与JS严格模式

1.DOCTYPE   不是标签,并且必须置于html标签之前,声明的是该html文档采用的是哪个版本的(html4.01,xhtml,html5),在HTML 4.01中,由于采用的是SGML,所以还要声明DTD,这样浏览器才能正确呈现html内容,HTML4.01有三个版本,strict(严格模式),transitional,frameset。 xhtml有四个版本,strict 、transitional、frameset、template。(详情参考:http://www.w3school.com.cn/tags/tag_doctype.asp)

2.JS严格模式,是针对JS引擎执行的模式,严格模式能让你发现以前一直忽略的错误,在严格模式下运行得代码,如果出现某些以前可以被忽略的错误时,会显式的抛出错误。有助于正确的修正该错误,能更方便的调试代码。严格模式与非严格模式有哪些不同和改进,可以参考改篇文章:http://flandycheng.blog.51cto.com/855176/982719。

3.doctype的严格模式(strict)与js的严格模式,是针对两个不同的方面,前者是对html标签,后者是对js引擎。

4.举个例子来说明js严格模式:

源码:

<script>
			
			//开启js严格模式
			"use strict";
			var person = new Object();
			Object.defineProperty(person, "name", {
				writable : false, //设置该属性不可写
				value : "zhangda"
			});
			console.log(person.name);
			person.name = "tom";
			console.log(person.name);

		</script>
结果:



不开启严格模式(注释掉“use strict;”)的结果:

会忽略掉对那么属性的修改。依旧打印原来的值。



  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值