1. function对象
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Function对象</title>
<script>
/* Function;函数(方法)对象
1.创建
1. var fun = new Function(形式参数列表,方法体);
※2. function 方法名称(形式参数列表){
方法体;
}
※3. var 方法名 = function(){
方法体;
}
2.方法
3.属性
length : 代表参数的个数
4.特点
1.方法定义时,形参的类型可以不用写,返回值类型也可以不写
2.方法是一个对象,如果定义名称相同会覆盖
3.在js中方法的调用,只与方法的名称有关,和方法的参数无关
4.在方法声明中有一个隐藏的内置对象(数组),arguments,封装所有的实际参数
5.调用
方法的名称(实际参数列表)
*/
// 1.创建方式1
var fun1 = new Function("a","b","alert(a);");
// 调用方法
fun1(3,4);
// 2.创建方式2
function fun2(a,b){
alter(a+b);
}
fun2(3,4);
// 3.创建方式3
var fun3 = function(a,b){
alter(a+b);
}
fun3(3,4);
//求两个数的和
function add(a,b){
return a+b;
}
var sum = add(1,2);
alter(sum);
// 求任意个数的和
function add(){
var sum=0;
for(var i=0;i<arguments.length;i++){
sum+=arguments[i]
}
return sum;
}
var sum = add(1,2,3,4,5,6);
alter(sum);
</script>
</head>
<body>
</body>
</html>
2.Array对象
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Array对象</title>
<script>
/*
Array:数组对象
1.创建:
1. var arr = new Array(元素列表);
2. var arr = new Array(默认长度);
3. var arr = [元素列表];
2.方法
join(参数):将数组中的元素按照指定的分隔符拼接为字符串
push(参数);想数组末尾添加一个或更多元素,并返回新长度
pop();删除并返回最后一个元素
concat():连接两个或更多的数组,并返回结果
reverse():颠倒数组中元素的顺序
shift():删除并返回数组的第一个元素
slice():从某个已有的数组返回选定的元素
......
3.属性
length : 获取数组长度
4.特点
1. JS中,数组元素的类型可变
2. JS中,数组的长度是可变的
3.
*/
// 1. 创建方式
var arr1 = new Array(1,2,3);
var arr2 = new Array(5);
var arr3 = [1,2,3,4];
var arr4 = [1,"abc",true]
document.write(arr1+"</br>")
document.write(arr2+"</br>")
document.write(arr3+"</br>")
document.write(arr4+"</br>")
document.write(arr5+"</br>")
</script>
</head>
<body>
</body>
</html>
3.Date对象
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Date对象</title>
<script>
/*
Date : 日期对象
1. 创建
var date = newDate();
2. 方法
toLocaleStirng();返回当前date对象对应的时间本地字符串格式
getTime(); 获取毫秒值,返回当前时间描述的时间到1970年1月1日零点的毫秒值差
*/
var date = new Date();
document.write(date+"</br>")
document.write(date.toString()+"<br>")
document.write(date.getTime()+"<br>")
</script>
</head>
<body>
</body>
</html>
3.Math对象
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
/*
Math,数学
1.创建:
*特点:Math对象,直接使用。Math.方法名();
2.方法:
random();返回0~1之间的随机数,含0不含1
round(x); 四舍五入
floor(x); 对数进行向下舍入
ceil(x); 对数进行想上取整
3.属性:
PI
*/
document.write(Math.PI+"<br>");
document.write(Math.random()+"<br>");
document.write(Math.round(3.14)+"<br>");
document.write(Math.ceil(3.14)+"<br>");
document.write(Math.floor(3.14)+"<br>");
/*
取1~100之间的随机数
*/
var m = Math.round(Math.random()*100);
document.write(m+"<br>");
</script>
</head>
<body>
</body>
</html>
3.RegExp:正则表达式对象
1.正则表达式:定义字符串的组成规则。
- . 正则表达式:定义字符串的组成规则。
单个字符 : [ ]
如: [a] [ab] [a-zA-Z0-9]
特殊符号代表特殊含义的单个字符:
\d : 单个数字字符 [0-9]
\w : 单个单词字符 [a-zA-Z0-9]量词符号
?:表示出现a次或0次
* : 表示出现0次或多次(前面没有点,为防止转义加了点)
+ :表示出现1次或多次(前面没有点,为防止转义加了点)
\w* :
{m,n} : 表示数量 m<= 数量 <= n
- m如果缺省: {,n} : 最多n次
- n如果缺省: {m,} : 最少m次
开始结束符号
- ^ : 开始
- $ : 结束
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
/*
正则对象:
1.创建:
1. var reg = new RegExp("正则表达式");
2. var reg = /正则表达式/;
2.方法:
1. test(参数); 验证指定的字符串是否符合正则定义的规范
*/
// 1.
var reg1 = new regExp("\\w{6,12}");
// 2.
var reg2 = /^\w{6,12}$/;
alert(reg1);
alert(reg2);
var usename = "zahngsan";
// 验证
var flag = reg3.test(username);
alert(flag);
</script>
</head>
<body>
</body>
</html>
4.Global对象
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script>
var str = "熊二博客"
var encode = encodeURI(str);
document.write(encode+"<br>"); // %E7%86%8A%E4%BA%8C%E5%8D%9A%E5%AE%A2
var s = decodeURI(encode);
document.write(s+"<br>"); // 熊二博客
var str1 = "熊二博客"
var encode = encodeURIComponent(str);
document.write(encode+"<br>"); // %E7%86%8A%E4%BA%8C%E5%8D%9A%E5%AE%A2
var s1 = decodeURIComponent(encode);
document.write(s+"<br>"); // 熊二博客
var str2= "123abc";
var number = parseInt(str2);
alert(number+1);
var a = NaN;
document.write(a==NaN +"<br>");
document.write(isNaN(a) +"<br>");
var jscode = "document.write(isNaN(a))"
eval(jscode);
</script>
</head>
<body>
</body>
</html>