JavaScript基础

JavaScript

​ js 和java的关系:其实他们没有任何关系

概念:

​ 一门客户端(浏览器)脚本语言,运行在我们的客户端,每一个浏览器都有js引擎

​ 脚本语言:不需要编译,直接就可以被浏览器解释执行

​ 最初用来验证表单

​ **功能:**增强用户和html的交互体验,2.可以控制html元素 3.让页面有动态效果,增强用户体验

起源

​ 第一个脚本语言叫做 c-- 后更名scriptEase

​ NetSpace(网景) 开发liveScript ,后因与Sun合作,所以更名为JavaScript

​ 微软,抄袭js开发JScript

​ ECMA指定ECMAScript(一套标准)

​ JavaScript = ECMAScript(标准) + BOM(js独有) + DOM(js独有)

ECMAScript 客户端脚本语言的标准

1.基本语法

  • 与HTML结合
    • 内部js
    • 外部js

注意

​ script可以写在任何地方,但是推荐写在head标签

​ script可以有多个

注释

​ // 单行注释

​ /* */ 多行注释

数据类型

​ 原始数据类型(基本数据类型)

​ 1.number 数字类型,整数,小数,NaN(not a number 不是数字的数字类型)

​ 2.string 字符串,“sss” , ‘ss’

​ 3.boolean ture和false

​ 4.null 一个对象为空的占位符

​ 5.undefined未定义,如果一个变量没有给初始化值,就会被复制成undefind

​ 判断类型用 typeof

​ 引用数据类型 对象

变量

​ 一小块存储数据的内存空间

​ java是强类型,js是弱类型

int i = 1 + 1; //2
var i = 1 + 1; //2
var i = 1 + "1"; // 11

​ var 变量名 = 初始化值;

typeof

​ 获取变量的类型

运算符

​ 1.一元运算符 ++ – + - 只有一个运算数的运算符

​ 在js中,如果变量不是我们运算需要的类型,那么js引擎自动把运算数进行类型转换,其他类型转number。

​ string转number NaN(有字符的情况下),数字(无字符)

​ boolean true 转成1 false转成0;

​ 2.算数运算符 + - * / %(取模,就是余数的意思)

​ 3.赋值运算符 = += -=

​ 4.比较运算符 > < >= <= == ===(全等于)

​ 比较方式

​ 1.类型相同:

​ 字符串:根据字典(ASCII)来直接比

​ 2.类型不相同

​ 先进行类型转化,在进行比较

​ 5.逻辑运算符 && || !

​ 其他类型转化成boolean

​ 1.number: 0 返回false,1和其他数字返回true

​ 2.string: ”“返回false,其他返回true

​ 3.null undefined 都是false

​ 4.对象 true

​ 6.三元运算符

​ ?值1:值2

语法

​ 表达式? 值1:值2;

逻辑控制语句

​ 1.if…else

​ 2.switch (java中,byte int shortchar js中,可以接受任何原始数据类型 number,string,boolean,null,undefined)

​ case1:

​ break;

​ 3.while​

​ 4.do…while​

​ 5.for

js的特殊语法

​ js中可以不写分号,但是强烈不推荐

​ 变量的定义需要var,但其实可以省略,强烈不推荐使用

区别

​ 写的话:表示一个局部变量

​ 不写:表示全局变量

案例:九九乘法表

<script type="text/javascript">
	document.write("<table align='center'>");
	for(var i = 1; i <= 9; i++){
		document.write("<tr>");
		for(var j = 1; j <= i; j++){
			document.write("<td>");
			document.write(j + "*" + i + "=" + i * j + "");
			document.write("</td>");
		}
		document.write("<br/>");	
		document.write("<tr>");	
	}
	document.write("</table>");
</script>

对象

方法对象 Function

创建

​ 1.不用

var fun = new Function(参数列表,方法体)

​ 2.

function 方法名称(形参){
	方法体
}

​ 3.

var 方法名 = function(形参){

}

Array对象 数组对象

​ 1.创建数组

​ var arr = new Array(元素列表);

​ var arr = new Array(默认长度);

​ var arr = [];

​ 2.push():往末尾添加新元素,并返回新长度

​ join(参数):根据参数把数组分割转换成字符串[1.2,3,4,5,]

Date 日期对象

Date 对象用于处理日期和时间。

可以通过 new 关键词来定义 Date 对象。以下代码定义了名为 myDate 的 Date 对象,有四种方式初始化日期:

new Date() // 当前日期和时间
new Date(milliseconds) //返回从 1970 年 1 月 1日至今的毫秒数
new Date(dateString)
new Date(year, month, day, hours,minutes, seconds, milliseconds)

Math数学对象

var math =new Math();
math.方法();
数学对象直接使用
random() 返回0到1的值,包含0,不包含1;
ceil()向上取整
floor()向下取整
round()四舍五入
案例

alert(Math.random());
alert(Math.PI);

RegExp 正则表达式 定义字符串的组成规则

​ 单个字符 [] [a] [ab]

​ \转义符

​ \d 单个数字字符 [0-9]

​ \w 单个单词字符 [a-zA-Z0-9]

量词符号

​ ? 出现0次或1次

​ * 出现0次或多次

​ + 出现1次或多次

{m,n} 最少出现m次,最多出现n次

开始结束符号

​ ^ 开始

​ $ 结束
案例

 <html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script type="text/javascript">
		//正则
		var reg = new RegExp("^\\w{6,12}$");
		var username = "wang";
		//验证
		var flag = reg.test(username);
		alert(flag);
	</script>
</head>
<body>
	
</body>
</html>

Global 全局对象

特点:不需要对象直接调用 方法名()
方法:encodeURI
decodeURI()
parseInt()
isNaN() 六亲不认,只要NaN参与的==全部返回false
eval()
案例

  var string ="老肖";
		var encode=encodeURI(string);
		var decode=decodeURI(encode);
		alert(encode);
		alert(decode);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值