转载:http://blog.csdn.net/jackwen110200/article/details/51850144
先有了Object还是先有了Function
- javascript中,“函数”(方法)也是对象。
- 一切对象都有一个根源。它是Object.prototype。
- 根源之上再没有其他根源。Object.getPrototypeOf(Object.prototype)是null。js中除字面量以外的一切引用对象都来自这个“根源”对象。
- 表达式Object.getPrototypeOf(Function) === Function.prototype的结果是真。这是Function特有的。实际上Function的prototype是一个内置函数,一切函数都派生自这个内置函数,这个内置函数是一个函数工厂。这个内置函数对象的prototype指向“根源”对象。
- 表达式Object.prototype === Object.getPrototypeOf(Function.prototype)的结果是真。说明了Object跟Function二者之间的联系,是通过“根源”对象联系起来的。
Function和Object,既是函数,因为都可以Function()或者Object()这样的方式执行,又是对象,因为可以Function.a = ‘a’,Object.a = ‘a’这样赋值。
说它们是函数,是因为他们都是通过上面第4条中说的”内置函数工厂“,派生出来的,因而具备函数的特性。
说他们是对象。是因为他们都是通过上面第1条中的”根源“对象,派生出来的,因此具备对象的特征。
继续说一下,Function.prototype指向”内置函数“。而Object.prototype指向”根源对象“。
因而new Function会产生一个匿名函数,而new Object产生一个plain object。
他们之间的关系简单描述就像下面这样。
相关推荐
文中着重论述了该系统的功能与实现、数据流程与存储、网上购物、后台管理等<br>经分析,使用Microsoft公司的ASP(Active Server Pages)和相关网页开发工具,利用微软提供的IIS建立运行环境,再利用ODBC(数据源)...
#PCDATA, element-name 包含文本和其它子元素 <MYFILE(#PCDTATA,TITLE)> MYFILE元素必须包含文本和TITLE子元素 , 使用逗号分隔排序 <MYFILE (TITLE,AUTHOR,EMAIL)> MYFILE元素必须依次包含TITILE,AUTHOR,EMAIL三...
除了无法访问它的大小和不能使用索引来获得它的子变量:集合可以看作只能由<#list...>指令使用的受限sequences。 5、 方法:通过传递的参数进行计算,以新对象返回结果 方法变量通常是基于给出的参数计算值在数据...
<name>s1</name><!--这个name和teacher根元素中的name发生命名冲突--> <sex>girl</sex><!--这个sex和teacher根元素中的sex发生命名冲突--> </student> </teacher> 2、名域的声明 (1)直接定义 xmlns:...
#include <luabind/function.hpp> #include <luabind/class.hpp> 你需要去做的第一件事是 调用 luabind::open(lua_State*), 由此注册可以在Lua创建类 的函数并初始化 LuaBind需要使用的 状态机全局结构. 如果你不...
Function instanceof Object 和 Object instanceof Function 都是 true 1。我们可以认为 Object 是一个特殊的“类”,而这里的“类”即:Function 于是便可以理解为: Object = Function () {} 或 Object = new ...
今天我们来尝试理解Function和Object.因为这个里面有些人前期可能会搞糊涂.他们之间到底是什么关系.当然也不除外当初的我. 注意:官方定义: 在Javascript中,每一个函数实际上都是一个函数对象. 我们先来看最简单的...
/// <para>格式后的异常信息字符串,包括异常内容和跟踪堆栈.</para> /// </retvalue> /// </summary> public static String FormatException(Exception ex, String catchInfo) { StringBuilder strBuilder = new ...
Function 函数就是对象,代表函数的对象就是函数对象。所有的函数对象是被Function这个函数对象构造出来的。...Function 与Object 关系图: 代码如下: [removed] var Foo= function(){} var f1 = n
它使能状态和事件流之间的数据依存关系的声明式定义。 根据这些定义,更改的传播会自动处理。 这是一个简单的例子: using namespace react; void AddNumbers(int a, int b) { return a + b; } // Two state ...
/// <para>格式后的异常信息字符串,包括异常内容和跟踪堆栈.</para> /// </retvalue> /// </summary> public static String FormatException(Exception ex, String catchInfo) { StringBuilder ...
importgrapher < entrypoint> 选项 --no-cache ,禁用缓存机制 --out-file <filename> ,设置输出文件名 原料药 您还可以将Import Grapher用作Node.js API const importGrapher = require ( 'import-grapher' ) ; ...
1.7.2 使用<noscript>和</noscript>标记对给出提示信息 1.8 JavaScript的实现基础 1.8.1 ECMAScript 1.8.2 DOM 1.8.3 BOM 1.9 客户端与服务器端脚本 1.10 JavaScript与JScript、 VBScript 1.11 JavaScript与Java、...
话说在楼猪理解和实践能力尚欠火候的时候,在这篇里曾经照搬了李战老师不少东西写在自己的博客...下面楼猪就通过自己写的几段简单代码,论证一下javascript内置Object和Function的关系。 1、Function就是Object,Object
1.面向对象的概念 面向对象编程(Object Oriented Programming, OOP, 面向对象程序设计)是一种计算机编程 架构,OOP 的一条基本原则是计算机...echo “p1对象的名字是:”.$p1->name.”<br>”; echo “p1对象的性别是...
[functionobject.hpp] ★ 把一些常用目的的函数封装成函数对象,比如"比较器/测试器" ☆ function object with special abstract targart. e.g. "comparer/Tester" ◆ [functionCreater.hpp] ★ 把多元函数封装为...
<> <0> <0 2> <0 3 6> <0 4 8 12> 4、利用二维数组实现一个矩阵类:Matrix。要求提供以下操作:(1)set(int row, int col, double value):将第row行第col列的元素赋值为value;(2)get(int row,int col):取...