jsはパラメータが配列であり、要素が数値であるか、または配列属性を持つオブジェクトであるかを検証します。
2269 ワード
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
</head>
<script type="text/javascript">
function f(x,y,z){
if(arguments.length!=3){
throw new Error("function f called with"+arguments.length+"arguments,but expects 3 arguments");
}
}
function z(){
var m=Number.NEGATIVE_INFINITY;
for(var i=0;i<arguments.length;i++){
if(arguments[i]>m)
m=arguments[i];
}
alert(m);
}
function arrayCopy(/* array*/ from,/*index*/ from_start,/*array*/to,/*index*/ to_start,/*integer*/ length){
}
function easycopy(args){
arrayCopy(args.from,args.from_start||0,args.to,args.to_start||0,args.length);
}
var a=[1,2,3,4];
var b=new Array(4);
easycopy({ from:a,to:b,length:4});
// a 。
function sumArray(a){
// ,
if(( a instanceof Array)||(a&& typeof a== "object"&& "length" in a)){
var total=0;
for(var i=0;i<a.length;i++){
var element=a[i];
if(!element) {
continue;
}
// number
if(typeof element=="number"){
total+=element;
}else{
// number
throw new Error("sum(): all array elements must be numbers");
}
}
return total;
}
else {
//sum
throw new Error("sum(a) argument a must be array");
}
}
function Sub(){
var array=[1,2,3,4,5];
var value=sumArray(array);
alert(value);
}
</script>
<body onload="Sub();">
</body>
</html>