JS基础s
引入js文件<script src="地址"></script>
输出document.write("<h1>内容</h1>")
改变html中内容document.getElementById("ID").innerHTML="新内容"
注释
单行注释//注释
多行注释/*注释*/
变量
通过var
声明各种类型
数组声明var arr=[1,2,3,4];
动态数组var arr=new Array();
不加前缀直接声明全局变量m = 1
严格作用域用let
可以通过赋值为空的方法清除变量a=null
运算符
字符串拼接可直接用+
任何类型与字符串作运算会被强制转换成字符串类型
比较运算符:
1 | == 双等(其他类型与字符串比较会自动转换) |
另外还有< > <= >=比较运算符
条件语句
if else,switch,for,while,do while
同C语言
for(j in i)
结构将j遍历i[]中的所有元素
跳转语句同C语言
函数
1 | 常用函数 |
定义函数function 函数名(){函数体}
函数可以在<script>
标签中使用或在HTML文件中使用
函数加this
指向本元素,如
<div onmouseout="function(this)"></div>
this指向本div
函数可用arguments.calle(n-1)
递归调用自身函数
异常捕获
1 | try{ |
事件
1 | onClick 单击事件 |
onload onunload
在body
中调用
DOM
DOM操作HTML
改变HTML输出流
不要再文档加载完成后再使用
document.write()
会覆盖文档寻找元素
通过id(ById)或标签名(ByTagName)找到HTML元素
ByTagName和ByName寻找到的多个元素会通过数组存储
改变HTML内容
属性
innerHTML
得到HTML属性
getAttribute("")
改变HTML属性
setAttribute("属性","值")
其他方法
1
2
3
4
5
6
7
8
9childNodes() 访问子节点
parentNode() 访问父节点
createElement() 创建元素节点
createTextNode 创建文本节点
insertBefore(,) 插入节点(选择位置)
appendChild() 添加节点(末尾)
removeChild() 删除节点
offsetHeight 网页尺寸(不包含滚动条)
scrollHeight 网页尺寸(包含滚动条)
DOM EventListener(句柄)
addEventListener("事件",函数)
: 添加句柄
removeEventListener("事件",函数)
:移除句柄
事件流
描述页面中接受事件的顺序
事件冒泡:由最具体的元素(最内层)接受,然后逐级向上传播至最不具体的结点(最外层)
事件捕获:最不具体的结点(最外层)先接收事件,最具体的结点(最内层)最后接收事件
事件处理
HTML事件处理:直接添加到HTML结构中
DOM0级事件处理:把一个函数赋值给一个事件处理程序
DOM2级事件处理
addEventListener(“事件名”,事件处理函数,布尔值(可略));
removeEventListener();
true:事件捕获 false:事件冒泡
IE事件处理
attachment(“事件名”,事件处理函数,布尔值(可略));
detachment();
事件对象
在触发DOM事件时会产生一个对象
DOM事件发生属于事件冒泡
事件对象event:
1 | type 获取事件类型 |
实例
1 | <script> |
JS内置对象
自定义对象
定义并创建对象:
1 | people = new Object(); |
使用函数来定义对象,然后创建新的对象实例:
1 | function people(name, age){ |
字符串对象
字符串位置:indexOf("")
存在返回所在位置,不存在返回-1
匹配字符串:match("")
存在打印字符串,不存在返回null
替换字符串:replace("","新字符串")
大小写转换:toUpperCase()/toLowerCase()
全部转大/小写
字符串转数组:split(",")
通过,
分割数组
Date日期对象
当日日期var date = new Date();
1 | 获取具体信息 |
时钟实例
1 | function startTime(){ |
1 | <div id="timetxt"></div> |
数组对象
两数组a,b
1 | a.concat(b) 合并数组 |
Math对象
1 | round() 四舍五入 |
parseInt()
可以将数据转为int类型
JS浏览器对象
window对象
1 | window.innerHeight 窗口内部高度 |
计时器
1 | setInterval() 间隔指定毫秒数不停执行指定代码 |
History对象
history.go()
括号里填1或-1等表示前进或后退页面
Screen对象
1 | screen.availWidth 可用宽度(除边框) |