JavaScript 简介

JavaScript 与 Java 的区别:

●Java 和 JavaScript 完全是两个不同的产品, Java 是 Sun 公司推出的面向对象的程序设计语言;而 JavaScript 是 Netscape 公司的产品,其目的是为了扩展 Netscape 浏览器功能。 JavaScript 是一种可以嵌入 Web 页面中的解释性语言。
●Java 是面向对象的程序设计语言,即使是开发简单的程序,也必须从类定义开始;JavaScript 是基于对象的,本身提供了非常丰富的内部对象供设计人员使用。 Java 语言的最小程序单位是类定义 ;而 JavaScript 中充斥着大量函数。
●两种语言的执行方式完全不一样。 Java 语言必须先经过编译,生成字节码,然后由 Java虚拟机运行这些字节码; 而 JavaScript 是一种脚本语言,其源代码无须经过编译,由浏览器解释执行。
●两种语言的变量声明也不一样。 Java 是强类型变量语言,所有的变量必须先经过声明,才可以使用,所有的变量都有其固定的数据类型;而 JavaScript 是弱类型变量语言,
●代码格式不一样。 Java 采用一种与 HTML 无关的格式,必须像 HTML 中引用外媒体那样进行装载,其代码以字节代码的形式保存在独立的文档中;而JavaScript 的代码采用 一种文本字符格式,可以直接嵌入 HTML 文档中,并且可动态装载,编写 HTML文档就像编辑文本文件一样方便。
在实际的使用中,还有另一种脚本语言: JScript 语言。 JScript 与 JavaScript 的渊源比较深。事实上,两种语言的核心功能、作用基本一致, 都是为了扩展浏览器的功能而开发的脚本语言 ,只是 JavaScript 是由 Netscape 公司开发的,而 JScript 语言是由 Microsoft 公司开发的 。
早期的 JScript 和 JavaScript 差异相当大, Web 程序员不得不痛苦地为两种浏览器分别编写脚本。于是诞生了 ECMAScript, 这是一个国际标准化的JavaScript 版本。现在的主流浏览器都支持这个版本。 现在平时所说的 JavaScript. 严格意义上讲, 其实应该是 ECMAScript 。

运行JavaScript

前面已经介绍了 JavaScript 通常嵌在互联网页中执行,在HTML 页面中嵌入执行 JavaScript代码有两种方式。
●使用Javascript前缀构建执行 JavaScript 代码的 URL。
●使用<script… />元素来包含 JavaScript 代码。
对于第一种方式而言,所有可以设置 URL 的地方都可使用这种以 javascript. 作为前缀的URL, 当用户触发该 URL 时, javascript:之后的 JavaScript 代码就会获得执行。
如果页面里需要包含大量的 JavaScript 代码,则建议将这些 JavaScript 脚本放在标签之间 。 <script…/>元素既可作为<head…/>子元素,也可作为<body…/>子元素 。
例如如下页面代码片段。

<body> 
    <a  href="javascript : alert('运行 JavaScrip!') ;" >运行 JavaScript</a>
    <script type="text/javascript">
        alert("直接运行的 JavaScript!"; 
    </script>
</body> 

第一种方式会生成一个超链接, 当用户单击该超链接时, alert(' 运行 Java Script! ') ;就会获得执行。

导入 JavaScript 文件
<script src="test.js"  type=" text/javascript " ></script>

使用<script…/>元素时可指定如下属性。

  • type : 该属性指定该元素内包含的脚本语言 的类型,通常都是 text/javascript 。对于JavaScript 脚本该属性可以省略。
  • src : 指定外部脚本文件的 URL。 指定该属性之后,该<script./>元素只能引 入外部脚本,不能在该元素内部写脚本。
  • charset : 指定外部脚本文件所用的字符集。该属性只能与 src 属性一起使用。
  • defer: HTML 5 增强的属性,用千指定脚本是否延迟执行。
  • async : HTML 5 增强的属性, 用于指定脚本是否异步执行。
    <script… ./> 元素的前 3 个属性没什么需要特别介绍的, 重点是 HTML 5 为该元素新增的defer 和 async 两个属性,这两个属性都用千提升 JavaScript 的性能。
使用 script 元素的 defer 推迟脚本执行

defer 属性会告诉浏览器必须等整个页面载入之后、解析完毕才执行该<script…/>元素中的脚本。

<script cype="text/javascript"  src="defer.js"  defer> 
</script>

**注:**defer 属性只 能作用 于外部脚本文件,它对于<script …/>元素内嵌的脚本不起作用。

使用 script 元素的 async 异步执行脚本

指定 async 属性的<script…/>元素会启动新线程、异步执行<script… ./> 元素导入的脚本文件,浏览器也会继续向下解析、处理页面内容。

<script type=" text/javascript " src="async.js"  async> 
</script>

**注:**async 属性只能作用于外部脚本文件,它对于<script… />元素内嵌的脚本不起作用。

noscript 元素

<noscript…/>元素用来向不支待 JavaScript 或禁用了 JavaScript 的浏览器显示提示信息。该元素的用法非常简单,直接在该元素内放提示信息即可,无须指定任何属性。

<body> 
    <noscript>
        <hl>必须支持 JavaScript</hl>
        <p>必须使用支待 JavaScript 的浏览器,并打开浏览器的 JavaScript 功能</p>
    </noscript> 
    <div  id="target"></div> 
</body> 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值