javascript的constructor属性
/*
constructor 属性
constructor 属性返回所有 JavaScript 变量的构造函数。
*/
console.log("John".constructor); // 返回函数 String() { [native code] }
console.log((3.14).constructor); // 返回函数 Number() { [native code] }
console.log(false.constructor); // 返回函数 Boolean() { [native code] }
console.log([1,2,3,4].constructor); // 返回函数 Array() { [native code] }
console.log({name:'John', age:34}.constructor); // 返回函数 Object() { [native code] }
console.log(new Date().constructor); // 返回函数 Date() { [native code] }
console.log(function () {}.constructor); // 返回函数 Function(){ [native code] } /*
因为typeof Date, 和typeof Array返回的都是object,所以分辨不出来到底是Date还是Array,可以使用constructor判断
*/ /*
你可以使用 constructor 属性来查看是对象是否为数组 (包含字符串 "Array"):
*/
function isArray(myArray) {
return myArray.constructor.toString().indexOf("Array") > -1;
} /*
你可以使用 constructor 属性来查看是对象是否为日期 (包含字符串 "Date"):
*/ function isDate(myDate) {
return myDate.constructor.toString().indexOf("Date") > -1;
}
javascript的constructor属性的更多相关文章
- Javascript object.constructor属性与面向对象编程(oop)
定义和用法 在 JavaScript 中, constructor 属性返回对象的构造函数. 返回值是函数的引用,不是函数名: JavaScript 数组 constructor 属性返回 funct ...
- javascript对象constructor属性
概述 返回一个指向创建了该对象原型的函数引用.需要注意的是,该属性的值是那个函数本身,而不是一个包含函数名称的字符串.对于原始值(如1,true 或 "test"),该属性为只读. ...
- constructor属性解析
JavaScript中constructor属性一直不是很清楚,今日终于弄清了其中缘由,下面举例说明. 首先是一个典型的JavaScript实例声明: function Person(){ this. ...
- JavaScript 构造函数 prototype属性和_proto_和原型链 constructor属性 apply(),call()和bind() 关键字this
1.构造函数: 通常构造函数首字母需要大写,主要是为了区别ECMAScript的其它函数.(高程三 P145) 构造函数与其他函数的唯一区别,就在于调用它们的方式不同.只要通过new来调用,任何函数都 ...
- JavaScript constructor 属性详解
对象的constructor属性用于返回创建该对象的函数,也就是我们常说的构造函数. 在JavaScript中,每个具有原型的对象都会自动获得constructor属性.除了arguments.Enu ...
- JavaScript类型检测, typeof操作符与constructor属性的异同
*#type.js function Person(name, age) { this.name = name; this.age = age; } var d = {an: 'object'}; v ...
- Javascript的构造函数和constructor属性
原型链 function Foo() { this.value = 42;}Foo.prototype = { method: function() {}}; function Bar() {} // ...
- JavaScript对象中的constructor属性
constructor属性始终指向创建当前对象的构造函数. 比如下面的例子: // 等价于 var foo = new Array(1, 56, 34, 12); var arr = [1, 56, ...
- JavaScript里的原型(prototype), 原型链,constructor属性,继承
① __proto__ 和 constructor 属性是 对象 所独有的. ② prototype 属性是 函数 所独有的. ** JS里函数也是引用类型的对象,所以函数也有 __proto__ 和 ...
随机推荐
- HDFS(二)
HDFS的I/O主要是三个方面: 一致性 HDFS在一致性上面主要是通过校验和(checksum)来实现:从client发起写入的时候会校验一下文件内容,但是发生在pipeline的最后一个节点的时候 ...
- Linux软连接和硬链接(转)
1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接. [硬连接]硬连接指通过索引节点 ...
- vs2017 xamarin导入jar,SO文件的问题
最近要弄用vs弄个安卓的系统,因为要使用硬件,所以要引进jar,SO文件 导入jar文件很顺利,具体步骤我也是在网上找的这里给个链接 http://www.2cto.com/kf/201604/502 ...
- angular中的ng-bind-html和$sce服务
输入的内容存储在数据库中,然后再在数据库中将这些数据读写到页面上,比如你使用了某个第三方的脚本或者库.加载了一段html等等,可能会多了一些css的样式(显示在界面上) 这个时候我们可以利用angul ...
- adb命令记录
1.杀掉 adb 进程 adb kill-server 2.重启 adb 服务 adb start-server 3.重启手机 adb reboot 4.进 shell 模 ...
- jmeter 历史版本下载
在官网下载: https://jmeter.apache.org/download_jmeter.cgi 新版本 要从命令行启动 cd 到bin目录下 使用 sh jmeter
- java代码-----实现4个人打牌游戏的相关代码。线程
总结:发送线程Sender().和接收线程Receiver() 虽然,这里的Sender()发送线程和Receiver()都有相同的睡眠时间,但是由于线程调度的不确定性,是的发送线程Sender每次发 ...
- Android软键盘弹出将底部栏顶上去并不会挤压界面
界面需要,找到了一种不需要去设置android:windowSoftInputMode属性的解决keyboard和layout不适问题 有关设置android:windowSoftInputMode的 ...
- maven环境的搭建,lemon-OA办公系统的搭建
当时要搭建activiti工作流,但是这个工作流是基于maven启动的,于是,学习了一下,maven环境的搭建 准备的环境: Jdk 1.6 Eclipse IDE 一个或者 MyEclipse M ...
- JNI(java Native Interface)
参看: http://blog.csdn.net/xw13106209/article/details/6989415