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 相关文章推荐
Extjs学习过程中新手容易碰到的低级错误积累
Feb 11 Javascript
JS操作Cookies的小例子
Oct 15 Javascript
js判断游览器类型及版本号的代码
May 11 Javascript
jquery ztree实现下拉树形框使用到了json数据
May 14 Javascript
jquery实现人性化的有选择性禁用鼠标右键
Jun 30 Javascript
JavaScript对数组进行随机重排的方法
Jul 22 Javascript
JS中使用apply方法通过不同数量的参数调用函数的方法
May 31 Javascript
jQueryUI Datepicker组件设置日期高亮
Oct 13 Javascript
JavaScript hasOwnProperty() 函数实例详解
Aug 04 Javascript
js实现方块上下左右移动效果
Aug 17 Javascript
js实现各浏览器全屏代码实例
Jul 03 Javascript
vue组件中watch props根据v-if动态判断并挂载DOM的问题
May 12 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下过滤HTML代码的函数
2007/12/10 PHP
PHP面向对象法则
2012/02/23 PHP
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
PHP中读取文件的8种方法和代码实例
2014/08/05 PHP
YII框架关联查询操作示例
2019/04/29 PHP
jcrop基本参数一览
2013/07/16 Javascript
JavaScript onkeypress事件入门实例(按下或按住一个键盘按键)
2014/10/17 Javascript
js超时调用setTimeout和间歇调用setInterval实例分析
2015/01/28 Javascript
浅谈EasyUI中Treegrid节点的删除
2015/03/01 Javascript
简单纯js实现点击切换TAB标签实例
2015/08/23 Javascript
AngularJS中一般函数参数传递用法分析
2016/11/22 Javascript
JavaScript日期选择功能示例
2017/01/16 Javascript
JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法
2017/01/20 Javascript
jquery中关于bind()方法的使用技巧分享
2017/03/30 jQuery
zTree异步加载展开第一级节点的实现方法
2017/09/05 Javascript
vue中element组件样式修改无效的解决方法
2018/02/03 Javascript
小程序云开发之用户注册登录
2019/05/18 Javascript
关于Layui Table隐藏列问题
2019/09/16 Javascript
[03:07]完美世界DOTA2联赛PWL DAY10 决赛集锦
2020/11/11 DOTA
Pandas之groupby( )用法笔记小结
2019/07/23 Python
Django 重写用户模型的实现
2019/07/29 Python
Python修改列表值问题解决方案
2020/03/06 Python
Django设置Postgresql的操作
2020/05/14 Python
Opencv 图片的OCR识别的实战示例
2021/03/02 Python
HTML5 声明兼容IE的写法
2011/05/16 HTML / CSS
HTML5实现自带进度条和滑块滑杆效果
2018/04/17 HTML / CSS
Linux中如何用命令创建目录
2015/01/12 面试题
校长先进事迹材料
2014/02/01 职场文书
军训教官感言
2014/03/02 职场文书
新手上路标语
2014/06/20 职场文书
关于诚信的活动方案
2014/08/18 职场文书
CSS变量实现主题切换的方法
2021/06/23 HTML / CSS
使用Python+OpenCV进行卡类型及16位卡号数字的OCR功能
2021/08/30 Python
Vue监视数据的原理详解
2022/02/24 Vue.js
PostgreSQL基于pgrouting的路径规划处理方法
2022/04/18 PostgreSQL
Java 多态分析
2022/04/26 Java/Android