内置对象
Array、Boolean、Date、Math、RegExp、String、Number、Functions、Events
1.Array对象
2.Math对象
(1)Math对象不是构造函数,它具有数学常数和函数的属性和方法,都是以静态成员的方式提供
(2)静态成员和实例成员
静态成员:直接使用对象(比如Math对象)来调用
实例成员:构造函数中的成员就是实例成员,实例也称为对象
(3)常用方法
①Math.PI
圆周率
②Math.floor()/Math.ceil()
向下取整/向上取整
③Math.round()
取整,四舍五入
④Math.abs()
绝对值
⑤Math.max()/Math.min()
最大值/最小值
⑥Math.sin()/Math.cos()
正弦/余弦
⑦Math.pow(x,y)/math.sqtr()
x的y次方/平方根
⑧Math.random()
生成随机数
document.write(Math.PI); //输出圆周率,3.141592653589793
document.write(Math.floor(Math.PI)); //向下取整是3
//(上是4,下是3)
document.write(Math.ceil(Math.PI)); //向上取整是4
document.write(Math.round(5.6)); //6,5.6四舍五入是6
document.write(Math.abs(-5.6)); //5.6,-5.6的绝对值是5.6
document.write(Math.max(3,10)); //10,最大值是10
document.write(Math.min(3,10)); //3,最小值是3
document.write(Math.pow(2,3)); //8,2的3次方是8
document.write(Math.sqrt(9)); //3,9的平方根是3
document.write(Math.random()); //0~1之间的随机数
document.write(Math.random()*10); //0~10之间的随机数
//Math.random()*(y-x) +x x~y
document.write(Math.random()*(8-3)+3);
//(0,1) *5 +3 就是3~8
3.String对象
(1)字符串的所有方法都不会修改字符串本身,操作完成会返回一个新的字符串
(2)拼接字符串的性能低
(3)常用方法
①字符串名.length
获取字符串的字符个数
②字符串名.charAt()/字符串名[]
获取指定位置的字符
③字符串名.charCodeAt()
获取指定位置处字符的ASCII编码
④字符串名.substr(x,y)
从下标为x处(包括x)截长度为y的字符串,没有y就截到尾部
⑤字符串名.slice(x,y)/字符串名.substring(x,y)
从下标为x处(包括x)截到下标为y处(不包括y)的字符串
var str1 = 'jjjjjjh8y';
document.write(str1.length); //9
document.write(str1.charAt(8)); //y,下标是从0开始的
document.write(str1[8]); //y,获取指定位置的字符
document.write(str1.charCodeAt(8));//121,y的ASCII编码121
document.write(str1.substr(3,4)); //jjjh,从下标为2处(包括2)截长度为4的字符串
document.write(str1.slice(2,7)); //jjjjh,从下标为2处(包括2)截到下标为7处(不包括7)的字符串
⑥字符串名.toLowerCase()/字符串名.toUpperCase()
转成小写/转成大写
var str1 = 'jH8y';
document.write(str1.toLowerCase()); //jh8y,转成小写
document.write(str1.toUpperCase()); //JH8Y,转成大写
⑦字符串名.trim()
去除字符串的前后空格,中间空格不行
var str1 = ' jh8y';
document.write(str1.trim()); //jh8y
(4)案例:URL转换成对象
var url = 'http://www.itlike.com/user?name=xg&girlfr=xf&sex=男&age=19';
function geturl(url) {
var start = url.indexOf('?')+1; //起点
var str1 = url.substr(start); //截到尾部,name=xg&girlfr=xf&sex=男&age=19
var str1arr = str1.split('&'); //{name=xg}{girlfr=xf}{sex=男}{age=19},分割之后变成数组
var user = {};
str1arr.forEach(function (value, index, array) {
//value,{name=xg}{girlfr=xf}{sex=男}{age=19}
var str2arr = value.split('=');//{name,xg}{girlfr,xf}{sex,男}{age,19}
var key = str2arr[0];
user[key] = str2arr[1];
});
return user;
}
geturl(url);
var userr = geturl(url);
document.write(userr.name);
4.Date对象(讲了之后再补充)
正则表达式
1.概念
正则表通常被用来检索,替换那些符合某个模式(规则)的文本
正则表达式是对字符串操作的一种逻辑表达式,用事先定义好的一些特定字符、及这些字符的组合,组成一个‘规则字符串’,这个‘规则字符串’用来表达对字符串的一种过滤逻辑
2.作用
(1)匹配:判定给定的字符串是否符合正则表达式的过滤逻辑
(2)提取:可以通过正则表达式,从字符串中获取需要的特定部分
(3)替换:正则有很强大的字符串替换能力
3.特点
(1)灵活性、逻辑性和功能性非常的强
(2)运用广,比如:爬虫(我也不太懂什么是爬虫,可以自己搜一搜)
(3)对于刚接触的人来说,比较绕、晦涩、难懂
4.组成
(1)普通字符
(2)元字符:正则表达式中有特殊意义的字符