JavaScript系列--对象
- 对象
- 一、Function对象
- 1.定义
- 2.属型
- 3.特点
- 4.调用
- 5.实例
- 二、Array对象
- 1.创建
- 2.方法
- 3.属型
- 4.特点
- 5.实例
- 三、Date日期对象
- 1.创建
- 2.方法
- 3.实例
- 四、Math对象
- 1.创建
- 2.方法
- 3.属型
- 4.实例
- 五、RegExp对象
- 1.正则表达式
- 1.单个字符
- 2.量词符号
- 2.正则对象
- 1.创建
- 2.方法
- 六、Global
- 1.特点
- 2.方法
- 3.URL编码
对象
一、Function对象
1.定义
function fun2(a,b){
alert(a+b)
}
通过function关键字定义
2.属型
length:代表形参的个数
3.特点
- 方法的定义是,形参的类型不用写,返回值类型也不写
- 方法是一个对象,如果定义名称相同的方法,会覆盖
- 在JS中,方法的调用只与方法的名称有关,和参数列表无关
4.调用
方法名称(实际参数列表)
5.实例
<script>
function fun2(a,b){
alert(a+b)
}
fun2(3,4)
</script>
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0pkWQcSq-1633254344883)(E:\Typora\Image\image-20211001234033696.png)]
二、Array对象
1.创建
var arr = new Array(元素列表);
var arr = new Array(默认长度);
var arr = [元素列表];
2.方法
join(参数):将数组中的元素按照指定的分隔符拼接为字符串
push():向数组中末尾添加一个或更多元素,并返回新的长度
3.属型
length:数组的长度
4.特点
1.JS中,数组元素的类型是可变的
2.Js中,数组长度可变
5.实例
<script>
var arr1 = new Array(1,2,true,"String");
var arr2 = new Array(5);//长度位5的数组
var arr3 = [1,2,false,2.4];
document.write(arr1+"<br>");
document.write(arr2+"<br>");
document.write(arr3+"<br>");
document.write(arr1.join("--"))
</script>
1,2,true,String
,,,,
1,2,false,2.4
1--2--true--String
三、Date日期对象
1.创建
var date = new Date();
2.方法
toLocalString():返回当前date对象对应的实践本地字符串格式
getTime():获取毫秒值。并返回当前时间到1970年1月1日零点的毫秒
3.实例
var date = new Date();
document.write(date.toLocaleDateString());
2021/10/1
四、Math对象
1.创建
特点:Math对象不用创建,直接使用。Math.方法名()
2.方法
random()返回0~1之间的随机数
ceil(x)对数进行上舍入
floor(x)对数进行下舍入
round(x)把数四舍五入为最接近的整数
3.属型
PI
4.实例
<script>
document.write(Math.PI+"<br>");
document.write(Math.random()+"<br>");
document.write(Math.ceil(3.14)+"<br>");//4
document.write(Math.floor(3.14)+"<br>");//3
/*
取1~100的随机整数
*/
var number = Math.floor(Math.random()*100) + 1;
document.write(number);
</script>
返回结果为
3.141592653589793
0.7615264855739028
4
3
86
五、RegExp对象
https://www.runoob.com/regexp/regexp-syntax.html
1.正则表达式
定义字符串的组成规则
正则表达式不好记忆,需要多进行练习,不必死记硬背。需要的时候进行查询即可
1.单个字符
[a] [ab] [a-zA-Z0-9]
特殊符号:
\w | 匹配字母、数字、下划线。等价于 [A-Za-z0-9_] |
\d | 单个字符[0-9] |
\w:匹配字母、数字、下划线。等价于 [A-Za-z0-9_]
2.量词符号
?:出现0次或1次
colou?r 可以匹配 color 或者 colour,? 问号代表前面的字符最多只可以出现一次(0次、或1次)。
"":出现0或多次
以匹配 runob、runoob、runoooooob 等, 号代表前面的字符可以不出现,也可以出现一次或者多次(0次、或1次、或多次)。
+:出现1次或多次
runoo+b,可以匹配 runoob、runooob、runoooooob 等,+ 号代表前面的字符必须至少出现一次(1次或多次)。
{mn}:表示m<=数量 <= n
m如果缺省{,n}最多n次
n如果缺省{m,}最少m次
2.正则对象
1.创建
var reg = new RegExp(“正则表达式”);
var reg = /正则表达式/
2.方法
test(参数):验证指定的字符串是否符合正则定义的规范
3.实例
var reg = new RegExp("^\\w{6,12}$");
var reg2 = /^\w{6,12}$/;
// var username = "zhangdsfdddddddddsan";//false
var username = "truetrue";//true
//验证
var flag = reg.test(username);
alert(flag);
六、Global
1.特点
全局对象,这个global中封装的方法不需要对象就可以直接调用。方法名。
2.方法
encodeURL():url编码
decodeURL():url解码
encodeURLComponent():url编码,编码的字符更多
decodeURLComponent():url解码
parseInt():将字符串转为数字
逐一判断每一个字符是否是数字,直到不是数字为止,将前面数字部分转为number
isNaN():判断一个值是否是NaN
eval:将JS字符串转为脚本执行
3.URL编码
黑马程序员 = %E9%BB%91%E9%A9%AC%E7%A8%8B%E5%BA%8F%E5%91%98
<script>
var str = "http://www.baidu.com/s?wd=强哥说Java";
var enconde = encodeURI(str);
document.write(enconde+"<br>");
var s = decodeURI(enconde);
document.write(s+"<br>");
//http://www.baidu.com/s?wd=%E5%BC%BA%E5%93%A5%E8%AF%B4Java
//http://www.baidu.com/s?wd=强哥说Java
var str1 = "http://www.baidu.com/s?wd=强哥说Java";
var enconde = encodeURIComponent(str1);
document.write(enconde+"<br>");
var s = decodeURIComponent(enconde);
document.write(s+"<br>");
// http%3A%2F%2Fwww.baidu.com%2Fs%3Fwd%3D%E5%BC%BA%E5%93%A5%E8%AF%B4Java
// http://www.baidu.com/s?wd=强哥说Java
var str2 = "a123abc";
var number = parseInt(str2);
alert(number + 1);
//124,字符转数字成功
var jscode = "alert(123);"
eval(jscode);
//弹出123
</script>