js1

一个完整的JavaScript实现应该由下列三个不同的部分组成

核心(ECMAScript)  文档对象模型(DOM)  浏览器对象模型(BOM)

<script>6个属性:

async:立即下载脚本,但不应妨碍页面中的其他操作,比如下载其他资源或等待加载其他脚本。只对外部脚本文件有效。

指定async属性的目的是不让页面等待两个脚本下载和执行,从而异步加载页面其他内容。

异步脚本一定会在页面的load事件前执行。支持异步脚本的浏览器:Firefox,Safari,Chrome

defer:脚本可以延迟到文档完全被解析和显示之后再执行。只对外部脚本文件有效。相当于告诉浏览器立即下载但延迟执行。

支持defer属性的浏览器:IE,Firefox,safari,chrome

src:包含要执行代码的外部文件。

type:表示编写代码使用的脚本语言的内容类型(也成为MIME类型)。服务器在传送JavaScript文件时使用的MIME类型通常是application/x-javascript。但在type中设置这个值却可能导致脚本被忽略。另外,在非IE浏览器中还可以使用以下值:application/javascript和application/ecmascript。

考虑到约定俗成和最大限度的浏览器兼容性,目前type属性的值依旧还是text/javascript。如果没有指定,其默认值仍为text/javascript。

使用<script>元素的两种方式:

(1)直接在页面中嵌入JavaScript代码

包含在<script>元素内部的JavaScript代码将被从上至下依次解释。在解释器对<script>元素内部的所有代码求值完毕以前,页面中的其余内容都不会被浏览器加载或显示。

(2)包含外部JavaScript文件

在解析外部JavaScript文件时,页面的处理也会暂时停止。

在<head>元素中包含所有JavaScript文件,意味着必须等到全部JavaScript代码都被下载、解析和执行完成以后,才能开始呈现页面的内容。这样会导致浏览器在呈现页面时出现明显的延迟,而延迟期间的浏览器窗口将是一片空白。为了避免这个问题,现代web应用程序一般都把全部JavaScript引用放在<body>元素中页面内容的后面。

外部文件的优点:如果有两个页面都使用同一个文件,那么这个文件只需下载一次。最终结果能够加快页面加载的速度。

ECMAScript中的一切都区分大小写

标识符:第一个字符必须是一个字母、下划线(_)或一个美元符号($),其他字符可以是字母、下划线(_)、美元符号($)或数字。

ECMAScript标识符采取驼峰大小写格式,第一个字母小写,剩下的每个单词的首字母大写。

严格模式:在顶部添加“use strict”

在严格模式下,ECMAScript的一些不确定性为将得到处理,而且对某些不安全的操作也会抛出错误。

关键字:break,do,instanceof,typeof,case,else,new,var,catch,finally,return,void,continue,for,switch,while,debugger*,function,this,with,default,if,throw,delete,in,try

保留字:

abstract,enum,int,short,boolean,export,interface,static,byte,extends,long,super,char,final,native,synchronized,class,float,package,throws,const,goto,private,transient,debugger,implements,protected,volatile,double,import,public

ECMAScript的变量是松散类型的。

未经初始化的变量会保存undefined值。可以在修改变量值的同时修改值的类型。

省略var变量就成了全局变量(严格模式下会报错)

严格模式下不能定义eval或arguments的变量。

ECMAScript中有五种简单数据类型:undefined、null、boolean、number、string

                          一种复杂数据类型:object

typeof操作符

undefined 未定义   boolean  布尔值   string 字符串  number  数值  object  对象或null   function  函数

var message="11111";

alert(typeof message); //string

alert(typeof 96); //number

alert(typeof null);//object  null被认为是一个空的对象引用

typeof 正则表达式 有的浏览器会返回function ,有的会返回object

undefined类型只有一个值就是undefined

undefined和null区分空指针对象和未经初始化的变量

对尚未声明过的变量只能执行一项操作typeof

typeof未经初始化的变量和未声明的变量都会返回undefined

null类型只有一个值null

如果定义的准备在将来用于保存对象,那么最好将该变量初始化为null而不是其他值。这样一来,只要直接检查null值就可以知道相应的变量是否已经保存了一个对象的引用。

alert(null==undefined)//true  undefined值是派生自null的





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值