javascript 精粹笔记


Posted in Javascript onMay 09, 2010

//为构造函数原型添加方法
Function.method=function(name,func){

this.prototype.name=func;
}

Number.method("integer",function(){

return Math[this < 0 ? 'ceil':'floor'](this);
});
(-10/3).integer();//-3

String.method("trim",function(){
return this.replace(/^\s+|\s+$/g,'');
})
" neat ".trim();//neat
//闭包
var quo = function(status){

return{

get_status:function(){

return status;

}

}
}
var myQuo = new quo("amazed");
myQuo.get_status();//amazed

//闭包经典例子片段
for(var i=0;i<lis.length;i++){

lis.onclick=function(i){

return function(){

alert(i);

};

}(i);
}

//套用
Function.method("curry",function(){

var slice=Array.prototype.slice,

args = slice.apply(arguments),

that = this;

return function(){

return that.apply(null,args.contact(arguments));

}
})

//记忆 递归
var memoization = function(memo,usefn){//抽象化
var fn = function(n){
var result = memo[n];
if(typeof result!=='number'){
result=usefn(fn,n);
memo[n]=result;
}
return result;
};
return fn;
};
var factorial= memoization([0,1],function(fn,n){//递归的形式
return fn(n-1)*n
});
factorial(5)//120

Javascript 相关文章推荐
js活用事件触发对象动作
Aug 10 Javascript
多个表单中如何获得这个文件上传的网址实现js代码
Mar 25 Javascript
JavaScript 和 Java 的区别浅析
Jul 31 Javascript
jquery $.each() 使用小探
Aug 23 Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
Feb 04 Javascript
基于Bootstrap实现Material Design风格表单插件 附源码下载
Apr 18 Javascript
jQuery实现下拉框多选 jquery-multiselect 的实例代码
Jul 14 Javascript
Javascript ES6中数据类型Symbol的使用详解
May 02 Javascript
vue2.0 中#$emit,$on的使用详解
Jun 07 Javascript
通过js控制时间,一秒一秒自己动的实例
Oct 25 Javascript
angular学习之动态创建表单的方法
Dec 07 Javascript
JavaScript代理模式原理与用法实例详解
Mar 10 Javascript
javascript之通用简单的table选项卡实现(二)
May 09 #Javascript
javascript动态添加表格数据行(ASP后台数据库保存例子)
May 08 #Javascript
使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
May 07 #Javascript
javascript 通用简单的table选项卡实现
May 07 #Javascript
jQuery 创建Dom元素
May 07 #Javascript
10个基于jQuery或JavaScript的WYSIWYG 编辑器整理
May 06 #Javascript
jQuery Selector选择器小结
May 06 #Javascript
You might like
学习php笔记 字符串处理
2010/10/19 PHP
PHP 线程安全与非线程安全版本的区别深入解析
2013/08/06 PHP
php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
2014/04/24 PHP
PHP 读取大文件并显示的简单实例(推荐)
2016/08/12 PHP
jQuery-Tools-overlay 使用介绍
2012/07/14 Javascript
JavaScript计算两个日期时间段内日期的方法
2015/03/16 Javascript
JavaScript 变量、作用域及内存
2015/04/08 Javascript
js实现获取div坐标的方法
2015/11/16 Javascript
JavaScript实现斗地主游戏的思路
2016/02/29 Javascript
jQuery实现只允许输入数字和小数点的方法
2016/03/02 Javascript
JS焦点图,JS 多个页面放多个焦点图的实例
2016/12/08 Javascript
easyUI combobox实现联动效果
2017/01/17 Javascript
利用jQuery解析获取JSON数据
2017/04/08 jQuery
微信小程序表单验证错误提示效果
2017/05/19 Javascript
JavaScript实现的数字与字符串转换功能示例
2017/08/23 Javascript
JavaScript实现带有子菜单和控件的slider轮播图效果
2017/11/01 Javascript
bootstrap+jquery项目引入文件报错的解决方法
2018/01/22 jQuery
JS实现的全选、全不选及反选功能【案例】
2019/02/19 Javascript
微信小程序 slot踩坑的解决
2019/04/01 Javascript
vue使用i18n实现国际化的方法详解
2019/09/05 Javascript
js实现转动骰子模型
2019/10/24 Javascript
图解JS原型和原型链实现原理
2020/09/15 Javascript
[08:42]DOTA2每周TOP10 精彩击杀集锦vol.2
2014/06/25 DOTA
[01:19:35]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第二局
2016/03/05 DOTA
用Python实现服务器中只重载被修改的进程的方法
2015/04/30 Python
解决Python3.8用pip安装turtle-0.0.2出现错误问题
2020/02/11 Python
keras 获取某层输出 获取复用层的多次输出实例
2020/05/23 Python
一篇文章搞懂python的转义字符及用法
2020/09/03 Python
canvas绘制太极图的实现示例
2020/04/29 HTML / CSS
英国灯具和灯泡网上商店:Lights.co.uk
2018/02/02 全球购物
环保项目建议书
2014/08/26 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书
门店店长岗位职责
2015/04/14 职场文书
荒岛余生观后感
2015/06/09 职场文书
《一面五星红旗》教学反思
2016/02/23 职场文书
Go Grpc Gateway兼容HTTP协议文档自动生成网关
2022/06/16 Golang