一、js的学习
1.ECMAScript
常量和变量:
const 常量名称=值;//常量初始化必须赋值,否则是无用常量,常量名称建议全部大写
var 变量名称;//undefined
var 变量名称=值; //变量的类型由值来决定
变量名名称必须是字母,数字,_,@这些特殊符号组成,但是不能以数字开头
js的基本数据类型:
undefined:未定义类型
null:空类型
boolean:布尔类型
number:字符串类型
string:数字类型
类型转换:
**string ->boolean:**如果是空字符,则返回false,其余返回true
**number->boolean:**非零的数(正数,负数),都返回true,0返回false
**boolean->string:**true返回字符串true;false返回字符串false
**number->string:**直接将数值转换成字符串
**string->number:**NaN
**boolean->number:**true转成1;false转成0;
运算符:
1.算术运算符:+、-、、/、%*
2.赋值运算:+=、-=、=、/=、=*
3.比较运算符:==(只比较两个变量的值)、===(比较两个变量的值和类型)、
4.逻辑运算符:&(表达式1不成立,会继续判断表达式2)、&&(表达式1不成立时,不会继续判断表达式2,注直接返回false)、|(表达式1成立,继续判断表达式2)、||(表达式1成立,不判断表达式2,直接返回true)、!
5.位运算:^(一个数亦或另一个数两次,得到的是他本身)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
var a = 100;
var pwd = 20210409;
console.log("加密:" + (a ^ pwd));
// 亦或一个数两次,得到的是它本身
console.log("解密:" + (a ^ pwd ^ pwd));
/*
不通过第三方变量完成两个变量的值互换
*/
var x = 10;
var y = 20;
// x = x^ y; //x = 10^20
// y = x^ y; //y=10^20^20=10
// x = x^ y; //x=10^20^10=20
// x+=y; //x=10+20=30
// y=x-y; //y=30-20=10
// x-=y; //x=30-10=20
x*=y; //x=10*20=200
y=x/y; //y=200/20=10
x=x/y; //x=200/10=20
console.log("x:"+x);
console.log("y:"+y);
</script>
</head>
<body>
</body>
</html>
6.三元运算符:表达式1?值1:值2;表达式成立返回值1,否则返回值2
流程控制语句:
判断:
if() {}
if() {}else{}
if() {}else if() {}
switch() {}
循环:
while() {}
do{}while()
for() {}
array.foreach(function(index,value) {})
数组:
var arr=[];
var arr=[1,2,3,];
var arr =Array();
var arr = Array(1,2,3,);
自定义对象:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
// 自己编写一个带参的构造器
function user(name, age) {
this.name = name;
this.age = age;
}
var p1 = new user("张三", 20);
console.log(p1.name + p1.age);
// 无参
var p2 = new Object();
p2.name="李四";
p2.age = 20;
console.log(p2.name+p2.age);
// 字面量
var p3 = {
name:"王五",
age:24
};
console.log(p3.name+p3.age);
</script>
</head>
<body>
</body>
</html>
内置对象:
Date:时间类
Math:数学类
RegExp:正则对象
BOM:(browser Object Model浏览器对象模型)
window:窗口
alert():弹出框
prompt():输入框
confirm():确定框
setTimeout():触发器
setTimeval():定时器
DOM(document object model文档对象模型)
节点:
1.文档节点
2.属性节点
3.文本节点:nodetype:3
4.元素节点:nodetype:1
所有的元素都是节点的子元素
document元素
Element元素
TextNode元素
1.元素获取
id:document.getElementById();
class:document.getElementByClassName();
标签名:document.getElementByTagName();
name属性:document.getElementByName();
2.节点之间的关系获取
childNodes:获取元素的子节点
parentNode:获取元素的父节点
document.createElement():创建元素
document.createTextNode():创建文本节点
a.appendChild(b):将后者b追加到前者a中
事件:用来检测用户的行为,当用户的行为满足某些条件的时候,触发一些业务逻辑。以此达到和用户的交互行为
JQuery
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YfNSkhYv-1618120032237)(C:\Users\Lenovo\AppData\Roaming\Typora\typora-user-images\image-20210409145755465.png)]
取元素的父节点
document.createElement():创建元素
document.createTextNode():创建文本节点
a.appendChild(b):将后者b追加到前者a中
事件:用来检测用户的行为,当用户的行为满足某些条件的时候,触发一些业务逻辑。以此达到和用户的交互行为