Object.prototype 与 Function.prototype 与 instanceof 运算符
方法:
- hasOwnProperty
- isPrototypeOf
- propertyIsEnumerable
hasOwnProperty
该方法用来判断一个对象中的某一个属性是否是自己提供的( 住要用在判断属性是原型继承的还是自己提供的 )
语法: 对象.hasOwnProperty( '属性名' ) -> boolean
isPrototypeOf
凡是看到 of 翻译成 的, 反过来翻译: prototype of obj, 翻译成 obj 的 原型
因此该方法的含义是: xxx 是 xxxx 的原型
语法: 对象.isPrototypeOf( 对象 ) -> boolean
propertyIsEnumerable(了解)
这个方法用于判断对象的某一个属性是不是自己提供的( 与 hasOwnProperty 一样 ), 同时该属性要求可枚举( for-in 遍历出来)
其他
- toString
- toLocaleString
- valueOf
例: var d=new Date();
console.log(d.toString);
console.log(d.toLocalString);
Function.prototype
常用成员
- apply 和 call
- caller
- bind
apply 和 call(在函数的四种调用模式中已详细说过)
caller
了解, 一般不推荐使用. 获得函数的调用者.
概念: 调用者与被调用者
function foo1() {
foo2();
}
bind
绑定, 这个语法来源于 ES5
在获得页面元素的时候, 是否有想过将 document.getElementById 用函数存起来
var f = document.getElementById;
// f( 'id' );
f.call( document, 'id' );
instanceof 运算符
愿意: 判断某一个对象是否为某一个函数的实例. 就是判断对象是不是由指定构造方法所创建.
function Person() {}
var p = new Person();
console.log( p instanceof Person );
// p -> Person.prototype -> Object.prototype -> null
console.log( p instanceof Array );
案例:
console.log( Object instanceof Function );
console.log( Function instanceof Object );
instanceof 表示判断构造函数的原型属性是否在对象所在的原型链上.
语法: 对象 instanceof 函数 -> boolean
描述: 说 '函数.prototype' 是否在 '对象' 的原型链上
Object.prototype 与 Function.prototype 与 instanceof 运算符的更多相关文章
- Object.prototype和Function.prototype一些常用方法
Object.prototype 方法: hasOwnProperty 概念:用来判断一个对象中的某一个属性是否是自己提供的(主要是判断属性是原型继承还是自己提供的) 语法:对象.hasOwnProp ...
- 一张图看懂Function和Object的关系及简述instanceof运算符
我在写一篇图解prototype和__proto__的区别时,搜资料搜到了一个有意思的现象,下面这两个运算返回的结果是一样的: Function instanceof Object;//true Ob ...
- 一起Polyfill系列:Function.prototype.bind的四个阶段
昨天边参考es5-shim边自己实现Function.prototype.bind,发现有不少以前忽视了的地方,这里就作为一个小总结吧. 一.Function.prototype.bind的作用 其实 ...
- 理解javascript中的Function.prototype.bind
在初学Javascript时,我们也许不需要担心函数绑定的问题,但是当我们需要在另一个函数中保持上下文对象this时,就会遇到相应的问题了,我见过很多人处理这种问题都是先将this赋值给一个变量(比如 ...
- 关于Function.prototype.apply.call的一些补充
宿主对象,在javascript中有三类对象,本地对象,内置对象和宿主对象.其他两类暂且不提,宿主对象是指什么呢(DOM BOM),控制台对象是文档对象模型的扩展,也被认为是宿主对象.那么,它们有什么 ...
- 理解 JavaScript 中的 Function.prototype.bind
函数绑定(Function binding)很有可能是你在开始使用JavaScript时最少关注的一点,但是当你意识到你需要一个解决方案来解决如何在另一个函数中保持this上下文的时候,你真正需要的其 ...
- javascript 一些函数的实现 Function.prototype.bind, Array.prototype.map
* Function.prototype.bind Function.prototype.bind = function() { var self = this, context = [].shift ...
- Function.prototype.bind、call与apply
学习Function.prototype.bind.call与apply时,看到一篇博客,学到一些内容,但由于博客时间太久,根据官方文档对内容进行一些修正:下文为修正过内容 前言 前段时间面试遇见一题 ...
- JS魔法堂:再次认识Function.prototype.call
一.前言 大家先预计一下以下四个函数调用的结果吧! var test = function(){ console.log('hello w ...
随机推荐
- 通过AF "get" 请求html页面总是失败的问题
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; manager.responseSe ...
- PDF 补丁丁 0.5.0.2078 测试版发布:不用打字,也能加书签
新增功能: 在书签编辑器加书签,不再需要自己输文本. 书签编辑器的阅读界面增加了识别文本字符的功能,可使用该功能在添加书签时识别文本. 右键点击文本内容,可插入书签(对于扫描版的文档,在激活识别引擎后 ...
- MHA+Atlas+mysql一主一从开启gtid安装配置与实验
各节点架构 (说明:生产环境有两个节点可以组成一套完整集群,我是测试环境,因此对于manager以及atlas和binlog server都是单点,如果生产环境,相应的将manager以及atlas和 ...
- iOS9 +http请求不能用的解决办法
报错NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802); 查询得知 iOS9引入了新特性App ...
- bzoj 3530: [Sdoi2014]数数
#include<cstdio> #include<iostream> #include<cstring> #define M 1509 #define MO 10 ...
- mysql 自动备份导出到sql
创建一个sh文件 vi mysql_auto.sh写入如下代码 导出单个数据库 /www/wdlinux/mysql/bin/mysqldump -uroot -p123456 database &g ...
- collectionview cell吸顶效果
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "Hiragino Sans GB"; color: #cf8724 } ...
- VS2012+LUA环境搭建
1 .启动VS2012,选择C++下的"win32"项目类型中的"Win2控制台应用程序" 2.工具——选项——项目和解决方案——VC++目录——可执行程序(C ...
- Switch图形练习
//package IfAndSwitchs;import java.util.Scanner; public class Mianji { public static void main(Strin ...
- android开发中的问题集锦(慢慢搬运...)
1, android 设置ExpandableListView 系统默认箭头到右边 if(android.os.Build.VERSION.SDK_INT < android.os.Build. ...