特殊运算符
- new运算符:创建一个对象
- delete运算符:删除数组的元素,或者对象的属性
- 只能删除数组元素的值,而所占空间还在,总长度不变
- typeof()
- 点运算符(.):主要应用在对象中,通过点运算符(.)调用属性或方法
break和continue
跳出循环, break一次只能跳出一层循环
数组
一组数的集合,称为“数组”。元素可以是任何类型。
数组的创建方法:
- 1、 使用new关键字和array()来创建数组
- var arr = new array()或(“1”,“2”。。。)
- 2、快捷方式,直接使用[ ]
数组的操作
- 读取元素
- 修改元素
- 增加元素
- 删除元素delete
数组对象的属性length,如:arr.length
函数
1、函数的定义格式
function 函数名(参数。。。){
功能代码;
[return xx];
}
- function关键字是必须的,全小写
- 命名规则
- 形参不能使用“var”关键字,不需要声明直接使用,形参可有可无
2、函数的调用
- 小括号不能省,但参数可选
- 函数名(参数。。)
3、函数的参数
- 形参
- 实参
4、在函数内部的无“var”关键字的变量相当于全局变量
拷贝传值和引用传址
匿名函数:没有函数名的的函数,不能单独使用,也不能调用。一般作为数据,给其他变量赋值。
var a = function(){
xxx;
}
a();调用,a是function型变量
对象
1、JS对象的分类:
- JS内置对象:数组、日期、字符串
- BOM对象:浏览器各组件对象。包括:window、document、location。。
- DOM对象:文档对象,包括了HTML所有的标记
- 自定义
2、自定义对象
- 使用new关键字结合构造函数Object()来创建一个空的对象
- 使用“ . ”来增加属性和方法
- 还可以使用{ }来创建对象
- var obj = {
name : “xx”,
age : “xx”,
school : undefined,
showInfo : function(){
xxxx
}
}
内置对象
1、String对象:字符串对象。
- 属性:length获取字符串长度str.length
- 方法:str.方法名
- toLowerCase():转全小写
- toUpperCase():转全大写
- charAt(index):返回指定下标位置的一个字符,如果没找到则返回空字符串
- indexOf():返回指定字符在原字符串的的索引或子字符串在原字符串的首字符索引。没有找到就返回-1。(从左往右)
- lastIndexOf():同上一样,不过是从右往左查询
- subStr():返回一个子字符串,str.subStr(startIndex[,length]),从startIndex(包含)开始,length可选
- subString():返回一个子字符串,str.subString(startIndex[,endIndex])
- split():将一个字符串切割成若干段,返回一个数组,str.split(分割号)
2、Array对象
- 属性: 动态获取数组的长度,length
- 方法:
- join(连接号):将一个数组以指定的连接号转成字符串
- reverse():将数组的各元素颠倒顺序。会改变原来的数组,不需要重新赋值
- shift():删除数组第一个元素,返回删除的值,总长度-1
- pop():删除数组最后一个元素,返回删除的值,总长度-1
- unshift(xx):往数组的前面添加一个或多个数组元素,长度要改变
- push(xx):往数组结尾添加
3、Date对象
- 必须使用new关键字创建
- 创建Date对象方法
- 1、创建当前日期对象,无参数:var today = new Date();
- 2、创建指定时间戳的日期对象,参数是时间戳(距离1970.1.1过去了多少毫秒):var timer = new Date(10000);
- 3、创建指定字符串的日期时间信息,参数是一个日期时间字符串:var timer = new Date(“1991/9/3 08:00:00")
- 4、指定多个参数:var timer = new Date(2005,4,4,10,20,0); 顺序:年月日时分秒
- 创建Date对象方法
- 属性:
- 方法:
- getFullYear():获取四位的年份
- getMonth():获取月份0-11
- getTime():距离1970的毫秒
4、Boolean对象
5、Number对象:一个数值变量,就是一个数值对象
- toFixed:numObj.toFixed(n),将一个数值转成字符串,并进行四舍五入,n是要保留的小数位数
6、Math对象:静态对象。直接使用,不用创建。
- PI:圆周率
- abs(xx):绝对值
- ceil(xx):向上取整(整数加1,小数去掉)
- floor(xx):向下取整(直接去掉小数)
- round(xx):四舍五入
- pow(x,y):求x的y次方
- sqrt(xx):求平方根
- random():0~1之间的随机小数
- 任意两数随机数公式random = Math.random()*(max-min)+min;然后向下取整random = Math.floor(random);