JS相关基础知识——数据类型、ECMAScript、对象、数组

一、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中

事件:用来检测用户的行为,当用户的行为满足某些条件的时候,触发一些业务逻辑。以此达到和用户的交互行为

上一篇:1_1 什么是JavaScript


下一篇:ES6 入门教程