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 相关文章推荐
javascript 实现字符串反转的三种方法
Nov 23 Javascript
js模仿hover的具体实现代码
Dec 30 Javascript
JavaScript中的prototype.bind()方法介绍
Apr 04 Javascript
jQuery中prevUntil()方法用法实例
Jan 08 Javascript
JavaScript错误处理
Feb 03 Javascript
Bootstrap表单使用方法详解
Feb 17 Javascript
Vue2.0利用 v-model 实现组件props双向绑定的优美解决方案
Mar 13 Javascript
js简单遍历获取对象中的属性值的方法示例
Jun 19 Javascript
vue学习之Vue-Router用法实例分析
Jan 06 Javascript
Node.js web 应用如何封装到Docker容器中
Sep 01 Javascript
如何通过JS实现日历简单算法
Oct 14 Javascript
uniapp引入支付宝原生扫码插件步骤详解
Jul 23 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实现的仿阿里巴巴实现同类产品翻页
2009/12/11 PHP
php使用GeoIP库实例
2014/06/27 PHP
ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
2014/07/22 PHP
PHP中设置一个严格30分钟过期Session面试题的4种答案
2014/07/30 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
PHP的serialize序列化数据以及JSON格式化数据分析
2015/10/10 PHP
潜说js对象和数组
2011/05/25 Javascript
基于jquery实现状态限定编辑的代码
2012/02/11 Javascript
jquery实现左右滑动菜单效果代码
2015/08/27 Javascript
jQuery简单实现仿京东商城的左侧菜单效果代码
2015/09/09 Javascript
解决angular的$http.post()提交数据时后台接收不到参数值问题的方法
2015/12/10 Javascript
前端JS面试中常见的算法问题总结
2016/12/23 Javascript
node.js发送邮件email的方法详解
2017/01/06 Javascript
解决URL地址中的中文乱码问题的办法
2017/02/10 Javascript
Ionic3实现图片瀑布流布局
2017/08/09 Javascript
浅谈React Native 中组件的生命周期
2017/09/08 Javascript
seajs实现强制刷新本地缓存的方法分析
2017/10/16 Javascript
基于mpvue的小程序项目搭建的步骤
2018/05/22 Javascript
使用async await 封装 axios的方法
2018/07/09 Javascript
原生JS实现图片懒加载之页面性能优化
2019/04/26 Javascript
学习LayUI时自研的表单参数校验框架案例分析
2019/07/29 Javascript
vue + axios get下载文件功能
2019/09/25 Javascript
解决vue项目中遇到 Cannot find module ‘chalk‘ 报错的问题
2020/11/05 Javascript
angular *Ngif else用法详解
2020/12/15 Javascript
python获取Linux下文件版本信息、公司名和产品名的方法
2014/10/05 Python
python调用百度地图WEB服务API获取地点对应坐标值
2019/01/16 Python
Python爬虫实战之12306抢票开源
2019/01/24 Python
python程序 线程队列queue使用方法解析
2019/09/23 Python
python获取响应某个字段值的3种实现方法
2020/04/30 Python
CSS3 box-sizing属性详解
2016/11/15 HTML / CSS
挪威太阳镜和眼镜网上商城:SmartBuyGlasses挪威
2016/08/20 全球购物
美国网上鞋城:Shoeline.com
2016/11/17 全球购物
留学自荐信写作方法
2014/01/27 职场文书
三八妇女节寄语
2015/02/27 职场文书
创业分两种人:那么哪些适合创业?,哪些适合不适合创业呢?
2019/08/23 职场文书
Java 中的 Lambda List 转 Map 的多种方法详解
2022/07/07 Java/Android