zoukankan      html  css  js  c++  java
  • js学习(一)

    一、概述

    什么是JS,即Javascript:

      Javascript是一种由Netscape的LiveScript发展而来的脚本语言,主要目的是为了解决服务器终端语言。

      Javascript就是适应动态网页制作的需要而诞生的一种新的编程语言,JavaScript 使网页增加互动性。JavaScript 使有规律地重复的HTML文段简化,减少下载时间。

      JavaScript 能及时响应用户的操作,对提交表单做即时的检查,无需浪费时间交由 CGI 验证。

      JavaScript 的特点是无穷无尽的,只要你有创意。

    二、用法

    1、<script> 标签

    如需在 HTML 页面中插入 JavaScript,请使用 <script> 标签。

      <script> 和 </script> 会告诉 JavaScript 在何处开始和结束。

      <script> 和 </script> 之间的代码行包含了 JavaScript。

    2、<script>标签的位置

    (1)理论上script标签的位置放在哪里可以,一般script标签会被放在头部或尾部。头部就是<head>里面,尾部一般指<body>里。

    (2)将script放在<head>里,浏览器解析HTML,发现script标签时,会先下载完所有这些script,再往下解析其他的HTML。讨厌的是浏览器在下载JS时,是不能多个JS并发一起下载的。不管JS是不来来自同一个host,浏览器最多只能同时下载两个JS,且浏览器下载JS时,就block掉解析其他HTML的工作。将script放在头部,会让网页内容呈现滞后,导致用户感觉到卡。所以建议将script放在尾部,这样能加速网页加载。

    (3)将script放在尾部的缺点,是浏览器只能先解析完整个HTML页面,再下载JS。而对于一些高度依赖于JS的网页,就会显得慢了。所以将script放在尾部也不是最优解,最优解是一边解析页面,一边下载JS。

    (4)使用async和defer。80%的现代浏览器都认识async和defer属性,这两个属性能让浏览器做到一边下载JS(还是只能同时下载两个JS),一边解析HTML。他的优点不是增加JS的并发下载数量,而是做到下载时不block解析HTML。

    <script type="text/javascript" src="path/to/script1.js" async></script>
    <script type="text/javascript" src="path/to/script2.js" async></script>

     带async属性的script会异步执行,只要下载完就执行,这会导致script2.js可能先于script1.js执行(如果script2.js比较大,下载慢)。

     defer就能保证script有序执行,script1.js先执行,script2.js后执行。

    (5)也可以把脚本保存到外部文件中。外部文件通常包含被多个网页使用的代码。外部 JavaScript 文件的文件扩展名是 .js。

       如需使用外部文件,请在 <script> 标签的 "src" 属性中设置该 .js 文件。

    三、输出

    JavaScript 可以通过不同的方式来输出数据:

    • 使用 window.alert() 弹出警告框。
    • 使用 document.write() 方法将内容写到 HTML 文档中。
    • 使用 innerHTML 写入到 HTML 元素。
    • 使用 console.log() 写入到浏览器的控制台。浏览器中(Chrome, IE, Firefox) 使用 F12 来启用调试模式, 在调试窗口中点击 "Console" 菜单。

    原文:https://blog.csdn.net/ybdesire/article/details/49284699

      

  • 相关阅读:
    SharePoint服务器端对象模型 之 访问用户、用户组和权限(Part 2)
    SharePoint服务器端对象模型 之 访问用户、用户组和权限(Part 1)
    SharePoint服务器端对象模型 之 使用LINQ进行数据访问操作(Part 4)
    SharePoint服务器端对象模型 之 使用LINQ进行数据访问操作(Part 3)
    SharePoint 服务器端对象模型 之 使用LINQ进行数据访问操作(Part 2)
    Restful.Data 开源持久层组件项目最新进展和使用说明
    高性能网站架构设计之缓存篇(6)- Redis 集群(中)
    让 asp.net 在 mac 上飞
    高性能网站架构设计之缓存篇(5)- Redis 集群(上)
    高性能网站架构设计之缓存篇(4)- Redis 主从复制
  • 原文地址:https://www.cnblogs.com/dongtian-blogs/p/10802149.html
Copyright © 2011-2022 走看看