constructor 属性
constructor 属性返回所有 JavaScript 变量的构造器函数。
实例
"Bill".constructor // 返回 "function String() { [native code] }"
(3.14).constructor // 返回 "function Number() { [native code] }"
false.constructor // 返回 "function Boolean() { [native code] }"
[1,2,3,4].constructor // 返回 "function Array() { [native code] }"
{name:'Bill', age:62}.constructor // 返回" function Object() { [native code] }"
new Date().constructor // 返回 "function Date() { [native code] }"
function () {}.constructor // 返回 "function Function(){ [native code] }"
亲自试一试
您可以通过检查 constructor 属性来确定某个对象是否为数组(包含单词 "Array"):
实例
function isArray(myArray) {
return myArray.constructor.toString().indexOf("Array") > -1;
}
亲自试一试
或者更简单,您可以检查对象是否是数组函数:
实例
function isArray(myArray) {
return myArray.constructor === Array;
}
亲自试一试
您可以通过检查 constructor 属性来确定某个对象是否为日期(包含单词 "Date"):
实例
function isDate(myDate) {
return myDate.constructor.toString().indexOf("Date") > -1;
}
亲自试一试
或者更简单,您可以检查对象是否是日期函数:
实例
function isDate(myDate) {
return myDate.constructor === Date;
}
亲自试一试