JS知识点小结

来源:互联网 发布:知乎新人 编辑:程序博客网 时间:2024/06/06 15:28
一、1.ECMAscript和JS的区别?
ECMAscript是JS要遵循的一套标准,它规定了JS的核心语法。
2.JS时一种专为与网页交互而设计的脚本语言。
   JS的实现要由3部分组成:核心(ECMAscript),提供核心的语言功能;
                                            文档对象类型(DOM),提供访问和操作网页内容的方法和接口;
                                            浏览器对象类型(BOM),提供与浏览器交互的方法和接口;
3.使用<script>元素的方式:2种
   1)直接在页面中嵌入JS代码
   2)引入外部JS文件
注意:在使用JS元素嵌入代码时,要为<script>指定type属性
即<script type="text/javascript"></script>
4.在使用<script>嵌入JS代码时,不要在代码中的任何地方出现“</script>”,否则当浏览器遇到</script>时,就会认为时结束的script标签,就会提前结束
可以通过转义字符“\”来解决
5.若<script>元素来包含外部JS文件,需要加src属性,src指向外部的JS文件的链接,可用相对路径,简单方便。
6.在解析外部JS文件(包括下载该文件)时,页面的处理也会暂时停止
7.带有src属性的script元素不应该在它的开始和结束标签中再嵌入额外的JS代码,如果嵌入了,则只会下载并执行外部脚本文件,嵌入的代码会被忽略。如下所示情况:
eg:<script src="">
                 <script></script>
       </script>
8.<script>中的src属性还可以包含外部域的JS文件,与img类似,即它的src属性可以时指向当前HTML页面所在域之外的某个域中的完整URL
eg:<script type="text/javascript" src="http:www.somewhere.com/afile.js"></script>
9.JS文件的执行顺序,一般情况下,按照JS文件从上到下的顺序依次来执行,第一个JS文件解析完成后,才会解析第二个,以此类推,除非<script>中包含了async或defer属性;(与内部或外部JS文件无关)
async:表示应立即下载脚本,但不应该妨碍页面中的其他操作
defer:表示脚本可延迟到文档完全被解析和显示之后再执行
二、标签的位置
1.传统来说,所有<script>元素都应该放在<head></head>元素中
2.对于那些需要很多JS文件的页面来说,会导致浏览器在加载页面时出现明显的延迟,即浏览器窗口时一片空白。
为解决这个问题,一般做法是把全部JS引用放在<body></body>中页面内容的后面,如下所示:
<!doctype html>
<html>
           <head></head>
           <body>
                        <!--页面内容-->
                        <script type="" src=""></script>
           </body>

</html>
这样在解析JS代码之前,页面的内容会完全呈现在浏览器中,而用户也会因为浏览器窗口显示空白页面的时间缩短而感觉打开页面的速度加快了。
3.defer和async属性只适用于外部的脚本文件
指定async属性的目的是不让页面等待两个脚本下载执行,而异步加载其他内容
注意:异步脚本不要在加载期间修改DOM。

进群领取相关资料WEB前端学习交流群21 598399936
原创粉丝点击