Array对象
Array对象的创建
arrayObj = new Array();
arrayObj = new Array([size]);
arrayObj = new Array(element0[,element1[,element2[,...[,elementN]]]])
参数说明:
- arrayObj:必选项,对象的变量名。
- size: 可选项,设置数组的大小,
若指定大小,则赋值不能越界。 - elementN:可选项,存入数组中的元素。
Array对象的输入和输出
输入
(1) 创建数组时
arrayObj = new Array(1,2,3,4,5,)
(2)利用数组下标输入
arrayObj[3] = "hello"
(3)利用for语句
输出
(1) 元素下标
(2) for
(3)document.write(arrayObj)
Array对象的属性
1.length
返回Array对象的长度
eg:
arrayObj= new Array(3);
document.write(arrayObj.length)
//result : 3
2.prototype
Array对象的方法
方法:
方法 | 描述 |
---|---|
concat() | 连接两个或更多的数组,并返回结果。 |
join() | 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。 |
pop() | 删除并返回数组的最后一个元素 |
push() | 向数组的末尾添加一个或更多元素,并返回新的长度。 |
reverse() | 颠倒数组中元素的顺序。 |
shift() | 删除并返回数组的第一个元素 |
slice() | 从某个已有的数组返回选定的元素 |
sort() | 对数组的元素进行排序 |
splice() | 删除元素,并向数组添加新元素。 |
toSource() | 返回该对象的源代码。 |
toString() | 把数组转换为字符串,并返回结果。 |
toLocaleString() | 把数组转换为本地数组,并返回结果。 |
unshift() | 向数组的开头添加一个或更多元素,并返回新的长度。 |
valueOf() | 返回数组对象的原始值 |
方法的具体使用:
concat()方法:
arr1=new Array("hello")
arr2=new Array("world")
document.write(arr1.concat(arr2))
//result:hello,world
join():
arr1=new Array("h","e","l","l","o")
document.write(arr1.join(""))
//result: hello
pop()方法:
arr1=new Array("h","e","l","l","o")
arr1.pop();
document.write(arr1+arr1.length);
//result : h,e,l,l ; length:4
push():
arr1=new Array("h","e","l","l","o")
arr1.push("!");
document.write(arr1+arr1.length);
//result : h,e,l,l,o,! length:6
shift():
arr1=new Array("h","e","l","l","o")
document.write(arr1.shift()) //result:h
document.write(arr1) //result : e,l,l,o
reverse():
arr1=new Array("h","e","l","l","o")
document.write(arr1.reverse())
//result:o,l,l,e,h
sort():
arr1=new Array("h","e","l","l","o")
document.write(arr1.sort())
//result: e,h,l,l,o 不提供排序函数,默认为按字母顺序排序
//如果提供了一个排序函数
arr1=new Array("1","3","10","100","6")
function array_sort(a,b){
return b-a;
}
document.write(arr1.sort(array_sort))
//result : 100,10,6,3,1
Math对象
Math对象属性
属性 | 描述 |
---|---|
E | 返回算术常量 e,即自然对数的底数(约等于2.718)。 |
LN2 | 返回 2 的自然对数(约等于0.693)。 |
LN10 | 返回 10 的自然对数(约等于2.302)。 |
LOG2E | 返回以 2 为底的 e 的对数(约等于 1.414)。 |
LOG10E | 返回以 10 为底的 e 的对数(约等于0.434)。 |
PI | ,返回圆周率(约等于3.14159)。 |
SQRT1_2 | 返回 2 的平方根的倒数(约等于 0.707)。 |
SQRT2 | 返回 2 的平方根(约等于 1.414)。 |
Math 对象方法
方法 | 描述 |
---|---|
abs(x) | 返回数的绝对值。 |
acos(x) | 返回数的反余弦值。 |
asin(x) | 返回数的反正弦值。 |
atan(x) | 以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。 |
atan2(y,x) | 返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。 |
ceil(x) | 对数进行上舍入。 |
cos(x) | 返回数的余弦。 |
exp(x) | 返回 e 的指数。 |
floor(x) | 对数进行下舍入。 |
log(x) | 返回数的自然对数(底为e)。 |
max(x,y) | 返回 x 和 y 中的最高值。 |
min(x,y) | 返回 x 和 y 中的最低值。 |
pow(x,y) | 返回 x 的 y 次幂。 |
random() | 返回 0 ~ 1 之间的随机数。 |
round(x) | 把数四舍五入为最接近的整数。 |
sin(x) | 返回数的正弦。 |
sqrt(x) | 返回数的平方根。 |
tan(x) | 返回角的正切。 |
toSource() | 返回该对象的源代码。 |
valueOf() | 返回 Math 对象的原始值。 |
eg:利用Math的random方法产生随机数
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>验证码</title>
<script type="text/javascript">
function createCode(){
var code=""; //定义一个字符串类型存储验证码
var codeLength=6; //验证码长度为6
for(var i=0;i<codeLength;i++){
code+=parseInt((Math.random()*10)).toString();
}
var codeButton=document.getElementById("code")
codeButton.value=code; //将生成的验证码在button显示出来
}
</script>
</head>
<body onload="createCode()">
<input type="button" id="code" onclick="createCode()"></input>
</body>
</html>
random()方法产生的随机数是一个小数点后十几位的小数,所以要用parseInt转换为整数,并且不能直接相加,要转换成字符串后再相加,否则结果会是一个由六个整数相加得到的是整数,而不是我们想要的字符串