javascript 검증 데이터 형식

2160 단어
최근 Underscore. js 소스 코드 에 대한 학습 을 통 해 자바 script 데이터 형식 에 대한 검증 에 대해 새로운 인식 을 가지 게 되 었 습 니 다. 이렇게 간단 하면 서도 전면적으로 판단 할 수 있 었 습 니 다.
isString, isNumber, isDate, isError, isRegExp, isBoolean, isNull, isUndefined, isObject 등 방법 을 사용자 정의 하 였 습 니 다.현재 자신 이 정의 한 javascript 데이터 형식 검증 함수 및 테스트 집합 을 보 여 줍 니 다:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		
	</body>
<script type="text/javascript">
//isString
//isNumber
//isDate
//isError
//isRegExp
//            
[].forEach.call(['String','Number','Date','Error','RegExp'],function(name){
	this['is'+name]=function(obj){
		return toString.call(obj)==='[object '+name+']';
	};
});
//isBoolean
//true false      
Object.prototype.isBoolean=function(obj){
	return obj===true||obj===false||toString.call(obj)==='[object Boolean]';
};
//isNull
//        
Object.prototype.isNull=function(obj){
	return obj===null;
};
//isUndefined
//        
Object.prototype.isUndefined=function(obj){
	return obj===void 0;
};
//isObject
//         
Object.prototype.isObject=function(obj){
	var type = typeof obj;
	return type === 'function' || type === 'object' && !!obj;
};

//test
//isString
var str="iamstring";
var a=isString(str);
console.log(a);//true

//isNumber
var b=isNumber(a);
console.log(b);//false

//isNumber
var num=4;
var c=isNumber(num);
console.log(c);//true

//isRegExp
var reg=/^[1-9]/;
var d=isRegExp(reg);
console.log(d);//true

//isDate
var date=new Date();
var e=isDate(date);
console.log(e);//true

//isBoolean
var bool=false;
var f=isBoolean(bool);
console.log(f);//true

//isNull
var nul=document.getElementById("div02");
var g=isNull(nul);
console.log(g);//true

//isUndefined
var undef;
var h=isUndefined(undef);
console.log(h);//true

//isObject
var obj={"1":"1","2":"2"};
var i=isObject(obj);
console.log(i);//true

</script>
</html>

코드 의 위 치 는:
http://runjs.cn/code/ucwpitro

좋은 웹페이지 즐겨찾기