匿名函数

简介:

拉姆达(lambda)函数

/*
ECMA-262 对象定义:无序属性的集合,散列表
构造函数始终要已一个大写字母开头,非构造小写开头
*/
var p  = new Object();
p.name = "cj";
p.say  = function(){this.name};
//缺点:使用同一个接口创建很对象,大量的垃圾重复代码

//工厂模式   问题 没有解决对象识别(怎么知道一个对象的类型)
function createP(name,age){
    var o = new Object();
    o.name =name;
    o.age = age;
    o.say =function(){this.name};
    return o;
}

//构造函数模式
function p(name,age){
    this.name =name;
    this.age =age;
    this.say =function(){this.name};
}
/*与工厂的区别,没有显示创建对象 直接将属性和方法赋给了this对象 没有return
使用NEW
1 创建一个新对象
2 将构造函数的作用域赋给新的对象(this就指向了这个新的对象)
3 执行构造函数中的代码(为这个新对象添加属性)
4 返回新对象
*/


//构造函数,函数的唯一区别, 调用它们的方式不同
//每个函数都有一个prototype属性,这个属性也是一个对象,对象的一个副本
function P(){}
P.prototype.name ="";
p.prototype.say=function(){this.name};

//创建函数,默认下prototype会自动获得一个constructor属性 包含指向PRO属性的所有函数指针

本文转自艾伦 Aaron博客园博客,原文链接:http://www.cnblogs.com/aaronjs/archive/2011/09/05/2167735.html,如需转载请自行联系原作者


相关文章
|
11月前
|
编译器
匿名函数lambda
匿名函数lambda
46 0
|
编译器 测试技术
C++11Lanbda表达式(匿名函数)
C++11Lanbda表达式(匿名函数)
122 0
|
编译器 C++
C++的匿名函数(lambda表达式)
C++的匿名函数(lambda表达式)
375 1
C++的匿名函数(lambda表达式)
Zp
Lambda 自带的匿名函数
Lambda 自带的匿名函数
Zp
82 0
|
PHP 开发者
匿名函数闭包|学习笔记
快速学习匿名函数闭包
113 0
匿名函数闭包|学习笔记
|
PHP 开发者
简单匿名函数|学习笔记
快速学习简单匿名函数
简单匿名函数|学习笔记
|
存储 开发者 Python
匿名函数的使用介绍 | 学习笔记
快速学习 匿名函数的使用介绍
131 0
匿名函数的使用介绍 | 学习笔记
|
C#
C#匿名函数
C#匿名函数
88 0
|
Go 开发者
匿名函数 | 学习笔记
简介:快速学习匿名函数