JavaScript 是一门客户端脚本语言.这里的客户端指的是客户端浏览器.脚本语言指不能直接运行,需要借助HTML才能运行的编程语言.完整的 JavaScript 实现由以下 3 个不同部分组成:
ECMAScript
文档对象模型(DOM)
浏览器对象模型(BOM)
其中:
JavaScript 的核心 ECMAScript 描述了该语言的语法和基本对象,定义了语言的规则.
DOM 描述了处理网页内容的方法和接口;
BOM 描述了与浏览器进行交互的方法和接口
BOM: Browser Object Model 即浏览器对象模型,尚无相关标准.常用的对象如下.
Window:窗口
Location:地址栏对象
History:历史记录
Screen:显示器对象
Navigator :浏览器对象
当浏览器打开,加载js引擎,就会创建这些对象。我们可以使用相应的引用访问这些对象
注:window对象中的定时器方法使用较多,需要掌握:setInterval():
循环定时器;setTimeout()
:一次性定时器
DOM: Document Object Model
DOM简单来说就是将标记语言文档封装为对象,比如HTML
和XML
都可以封装为对象.当HTML
加载进内存会生
成一个HTML DOM
对象,通过对外提供的一些方法,就可以对元素节点进行操作.注:Document对象是Window 对象的一部分,可通过window.document
属性对其进行访问.
DOM的常用的操作:
获得元素:
document.getElementById(); 通过ID获得元素.
document.getElementsByName(); 通过name属性获得元素.
document.getElementsByTagName(); 通过标签名获得元素.
创建元素:
document.createElement(); 创建元素
document.createTextNode(); 创建文本
添加节点:
element.appendChild(); 在最后添加一个节点.
element.insertBefore(); 在某个元素之前插入.
删除节点:
element.removeChild(); 删除元素
通过创建节点,增加元素的方式比较麻烦.使用元素的InnerHTML
属性是最简单的,不足之处在于该方法会覆盖之前的元素内容.
js数据类型:
number:数字,整数、小数、NaN(not a number)
string:字符和字符串
boolean:true,false
null:空
undefined:未定义.当一个变量没有赋值时,系统会默认赋值为undefined
与Java相比,js是一门弱类型的语言,变量存储空间中可以存储任意数据类型的数据.
变量声明时,使用关键字var即可.
由于js
中的数据类型转换比较常用,现简单介绍常用的数据类型转换规则:
其他类型转number:
string-->number:字面值转,如果转不了NaN
boolean-->number: true为1,false为0
其他类型转boolean:
number-->boolean:0和NaN为false,其他为true
string-->boolean:""为false,其他为true
对象:全部为true
null和undefined:false
===:全等于,先比较类型,在比较值
js函数:
js函数没有重写的说法,如果定义重名的函数,则后边的会覆盖前面函数.
调用:函数名称(实际参数列表);
特点:js中函数的调用只与函数名称有关,与实际参数列表无关.
js函数中有一个内置对象:arguments,用于接收所有实际参数的数组
js数组:
类型和长度可变,相当于Java中的Arraylist集合
js事件:
事件通常与函数配合使用,这样就可以通过发生的事件来驱动函数执行.
常用的事件类型:
onclick:单击
onload:当页面加载完成之后
onsubmit:表单提交
onchange:改变时
onkeypress:键盘按下并抬起
onmousedown:鼠标被按下了
onmousemove 鼠标被移动。
onmouseout 鼠标从某元素移开。
onmouseover 鼠标移到某元素之上。
Js常用的内建对象:
Array
Date
Math
Number
String
RegExp
JavaScript
中对象的学习方法和Java
中的类一致,查看相关API
,会创建对象,调用方法即可.
有志于web
学习的朋友可以参照w3c
相关课程.