constructor 属性返回变量或对象的构造函数。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>constructor 属性返回变量或对象的构造函数。</title>
</head>
<body> <p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
"john".constructor + "<br>" +
(3.14).constructor + "<br>" +
false.constructor + "<br>" +
[1,2,3,4].constructor + "<br>" +
{name:'john', age:34}.constructor + "<br>" +
new Date().constructor + "<br>" +
function () {}.constructor;
</script> </body>
</html>
运行结果:
function String() { [native code] }
function Number() { [native code] }
function Boolean() { [native code] }
function Array() { [native code] }
function Object() { [native code] }
function Date() { [native code] }
function Function() { [native code] }
判断是否为日期,数组的例子
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>判断是否为日期、数组</title>
</head>
<body>
<p>判断是否为日期。</p>
<p id="demo1"></p>
<p>判断是否为数组。</p>
<p id="demo2"></p>
<script>
var myDate = new Date();
var fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo1").innerHTML = isDate(myDate);
document.getElementById("demo2").innerHTML = isArray(fruits);
function isDate(myDate) {
return myDate.constructor.toString().indexOf("Date") > -1;
}
function isArray(myArray) {
return myArray.constructor.toString().indexOf("Array") > -1;
}
</script>
</body>
</html>
测试结果
判断是否为日期。 true 判断是否为数组。 true