JS的三大分类
核心(ECMAScript): 描述了该语言的语法和基本对象 文档对象模型(DOM):描述处理网页内容的方法和接口 浏览器对象模型(BOM): 描述与浏览器进行交互的方法和接口
核心(ECMAScript)
1.存在形式
- 1.1 Script代码块只能在当前页面使用
- 1.2 独立js文件,可以引入
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script type="text/javascript">
//内部编写JS代码的地方
</script>
<!--外部路径引入JS-->
<script type="text/javascript" src="js路径"></script>
</body>
2.变量
<script type="text/javascript">
//全局变量
na = ‘张三‘;
function func() {
//局部变量
var age = 18;
//全局变量
a = 20;
}
</script>
2.输出
- 1.1 console.log()
- 1.2 window.alert()
- 1.3 document.write()
- 1.4 innerHTML()
3.数据类型
常用方法
方法 | 描述 |
name[0] |
索引 |
length |
长度 |
trim() |
去除空白 |
charAt(index) |
根据索引获取字符 |
subString(start,end) |
根据索引获取子序列 |
split() |
分割 |
<body>
<div id="d1">HTML标签和样式</div>
<script>
setInterval(function () {
var element = document.getElementById("d1");
var text = element.innerText;
var lastText = text.charAt(text.length-1);
var preString = text.substring(0, text.length - 1);
element.innerText = lastText + preString;
}, 1000);
</script>
</body>
方法 | 描述 |
isNaN() |
确定某个值是否是个数 |
infinity() |
计算数时超出最大可能数范围时返回的值 |
Number() |
返回数字,由其参数转换而来。 |
parseFloat() |
解析其参数并返回浮点数。 |
parseInt() |
解析其参数并返回整数。 |
初始化
var names = ["张三", "李四"];
var names = Array("张三", "李四");
常见方法
方法 | 描述 |
names[0] |
索引 |
push() |
尾部追加 |
pop() |
尾部删除 |
unshift() |
头部增加 |
shift() |
头部删除 |
splice(index, 0, ele) |
指定位置插入元素 |
splice(index, 1, ele) |
指定位置替换元素 |
splice(index, 1) |
指定位置删除元素 |
slice(start, end) |
切片 |
reverse() |
翻转 |
join() |
将元素连接起来构建一个字符串 |
concat() |
连接数组 |
sort() |
排序 |
var status = true;
var status = false;
声明
var info = {
name: "张三",
age: 18
}
常用方法
方法 | 描述 |
info["name"] |
获取 |
info["age"] = 20 |
修改 |
info["sex"] = "女" |
增加 |
delete info["sex"] |
删除 |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
table {
border-collapse: collapse;
}
table th, table td {
border: 1px solid #dddddd;
padding: 8px;
}
table th {
font-weight: bold;
}
</style>
</head>
<body>
<div>
<label>
<input type="button" onclick="func()" value="添加一个人员"/>
</label>
</div>
<table>
<thead>
<tr>
<th>学号</th>
<th>姓名</th>
<th>性别</th>
</tr>
</thead>
<tbody id="body"></tbody>
<script type="text/javascript">
var userList = [
{id:1, name:"张三", sex:"男"},
{id:2, name:"翠花", sex:"女"},
{id:3, name:"李四", sex:"男"}
]
count = 0;
function func() {
var element = document.getElementById("body");
if (count < userList.length) {
var user = userList[count];
var trNode = document.createElement("tr");
for (var key in user) {
var tdNode = document.createElement("td");
tdNode.innerText = user[key];
trNode.appendChild(tdNode);
}
element.appendChild(trNode);
count++;
}else {
window.alert("没有人员了");
}
}
</script>
</table>
</body>
</html>
‘==‘只比对值、‘===‘需要类型和值同时相等
文档对象模型(DOM)
1.DOM节点
属性 | 描述 |
attributes |
节点的属性节点 |
nodeType |
节点类型 |
nodeName |
节点名称 |
nodeValue |
节点值 |
innerHTML |
节点的文本值 |
parentNode |
父节点 |
firstNode |
节点下第一个子元素 |
lastNode |
节点下最后一个子元素 |
childNodes |
节点后的子节点 |
parentElement |
父节点标签内的元素 |
childElement |
所有子节点 |
firstElementChild |
第一个子节点 |
lastElementChild |
最后一个子节点 |
nextElementSibling |
下一个兄弟标签元素 |
previousElementSibling |
上一个兄弟标签 |
classList |
add()-增加 |
|
remove()-移除 |
|
toggle()-切换 |
|
contains()-判断是 |
|
contains()-判断是否有对应类名 |
style |
添加css样式 |
属性 | 描述 |
document.getElementById() |
根据id属性获取节点 |
document.getElementByTagName() |
根据标签名获取节点的数组 |
documeng.getElementByName() |
根据name属性获取符合条件的节点数组 |
document.getElementsByClassName |
根据节点的类名获取标签的伪数组 ,ie8不支持,他是h5标准 |
document.querySelector("#id名") |
获取指定id的标签节点 |
document.querySelectorAll(".类名") |
获取指定选择器的节点 |
2.事件
事件 | 方法 |
用户点击某个对象时调用的事件句柄 |
onclick() |
用户双击某个对象时调用的事件句柄 |
ondblclick() |
元素获取焦点 |
onfocus() |
元素失去焦点 |
onblur() |
域的内容被改变 |
onchange() |
键盘按键被按下 |
onkeydown() |
键盘按键被松开 |
onkeyup() |
页面或图像完成加载 |
onload() |
鼠标按键被按下 |
onmousedown() |
鼠标被移动 |
onmousemove() |
鼠标从某个元素移开 |
onmouseout() |
鼠标移到某个元素之上 |
onmouseover() |
鼠标从元素离开 |
onmouseleave() |
文本被选中 |
onselect() |
确认按钮被点击 |
onsubmit() |
添加class |
classListAdd |
3.增删改
浏览器对象模型(BOM)
1.window对象
描述 | 属性 |
显示带有一段消息和一个确认按钮警告框 |
alert() |
显示带有一段消息以及确认按钮和取消按钮的对话框,返回状态 |
confirm() |
显示课题是用户输入的对话框,返回输入值 |
prompt() |
打开一个新的浏览器窗口或查找一个已命名的窗口 |
open() |
关闭浏览器 |
close() |
按照指定的周期来调用函数或计算器 |
setInterval() |
把内容滚动到指定的坐标 |
scrollTo() |
2.history对象:访问过的URL
描述 | 属性 |
返回浏览器历史里列表中的url数量 |
length |
加载history的前一个url |
back() |
加载history的下一个url |
forward() |
加载history的某个具体页面 |
go() |
3.location对象
描述 | 属性 |
加载url |
location.assign(url) |
重新加载 |
location.reload() |
替换当前的url |
location.replace(url) |
JavaScript知识点总结
原文:https://www.cnblogs.com/slashman/p/12653734.html