constructor 属性,判断是否为数组
<!--你可以使用 constructor 属性来查看是对象是否为数组 (包含字符串 "Array"):-->
<p>constructor属性返回变量或对象的构造函数</p>
<p id="demo9"></p>
<script>
document.getElementById("demo9").innerHTML=
"John".constructor+"<br>"+
(3.14).constructor+"<br>"+
(18).constructor+"<br>"+
false.constructor+"<br>"+
[1,2,3,4].constructor+"<br>"+
{name:"李琼",ages:18,}.constructor+"<br>"+
new Date().constructor+"<br>"+
function (){}.constructor;
</script>
结果:
constructor属性返回变量或对象的构造函数
function String() { [native code] }
function Number() { [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] }
<p>判断是否是数组</p>
<p id="demo8"></p>
<script>
var fruits = ["Banner","Orange","Apple","Mango"];
document.getElementById("demo8").innerHTML = isArray(fruits);
function isArray(myArray){
return myArray.constructor.toString().indexOf("Array")>-1;
}
//indexOf如果要检索的字符串值没有出现,则该方法返回 -1,有返回搜索字符串第一次出现的位置>=0。
</script>
结果:
判断是否是数组
true
<!--使用 constructor 属性来查看是对象是否为日期 (包含字符串 "Date"):-->
<p>判断是否是Date日期</p>
<p id="demo10"></p>
<script>
var fruits = new Date();
document.getElementById("demo10").innerHTML = isDate(fruits);
function isDate(myArray){
return myArray.constructor.toString().indexOf("Date")>-1;
}
//indexOf如果要检索的字符串值没有出现,则该方法返回 -1,有返回搜索字符串第一次出现的位置>=0。
</script>
结果:
判断是否是Date日期
true