自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 js函数柯里化

js函数柯里化函数柯里化:函数柯里化就是将需要传递多个参数的函数,分解成每次值传递一个或者一部分参数,让它返回的函数去处理剩下的参数。举例function add(a,b,c){ return a+b+c;} //普通函数调用 add(1,2,3)//函数柯里化之后 add(1)(2)(3)//分装一个公共的函数柯里化function curry(){ var fn = [].shift.call(arguments); var args = arguments; var len

2020-07-20 11:29:31 183

原创 Promise实现

实现一个简单的promise首先promise是一种异步解决方案,避免了开发中的回调地狱的问题,promise状态有三种,pending resolved,rejected 一旦状态改变将不可逆,也就是说状态只能由pending——resolved或者pending——rejected,下面来实现一个简单的promise函数function PromiseMy(constructor){ var self = this; this.state = 'pending'; this.value = u

2020-07-06 19:48:49 150

原创 css常用布局记录

常用水平垂直居中方式psoition + 负marginposition + margin autoposition + transformposition + calcflex

2020-06-20 16:19:02 153

原创 js浅拷贝和深拷贝

js数据类型基本数据类型:string null undefined boolean unmber symblo(es6)他们都是存在栈内存引用数据类型:比如Array Object 他们在栈内存中保存的实际上是对象在堆内存中的引用地址。通过这个引用地址可以快速查找到保存中堆内存中的对象js对象浅拷贝//通过简单得赋值语句就能实现浅拷贝var obj = { name:"wucr"}var obj1 = obj//当我们改变其中一个对象时,另一个对象也会改变,因为他们指向同一个内存地址O

2020-06-19 10:50:23 102

原创 bind函数模拟实现

bind函数模拟实现console.log(Function.prototype.bind) // functionconsole.log(Function.prototype.bind()) // functionconsole.log(Function.prototype.bind.name) // bindconsole.log(Function.prototype.bind().name) // bound以上可以看出bind是函数Function原型链上的属性,bind是一个函

2020-06-17 10:20:48 185

原创 call和apply的模拟实现

call和apply都可以改变this的指向请看下面函数的执行var name = "hello"var foo = { name: "wucr"};function getName(){ console.log(this.name)}getName() //返回值hellogetName.call(foo) // 返回值 wucr那么如何模拟实现一个call函数呢,请看下面分析var foo = { name: "wucr", getName:function(){

2020-06-16 09:37:14 178

原创 使用一行代码实现字符串模板替换函数

字符串模板替换例如:let str = 我的名字叫{{name}},我今年{{}}岁了,let obj = {name:“wucr”,age:“18”}function render(str,obj){ str = str.replace(/{{(.?*)}}/g,(match,key) => obj[key.trim()])}下面来说下replace str.replace(/{{(.?*)}}/g,function(match,key,index,source){

2020-06-11 11:16:51 294

原创 css知识点总结

css盒模型1,css盒模型分为:IE盒模型和标准盒模型,主要表现为对于dom元素计算高度和宽度的区别上IE盒模型:元素的宽度 = content + padding2 + border2标准盒模型:元素宽度 = content设置盒模型的属性:box-sizing/*IE*/body{ box-sizing: border-box;}/*标准*/body{ box-sizing: content-box}BFC...

2020-06-06 15:11:37 162

原创 typescript基础知识学习总结

typescript学习总结《TypeScript 入门教程》基础原始数据类型1,原始数据类型有6中null,undefined,string,number,boolean,symbol(es6)let a: string = 'hello world';let c: number = 1let b: boolean = false;let u: undefined = undefined;let n: null = null;任意值1,如果一个变量在声明的时候没有指定类型,那么这个

2020-06-05 17:19:09 296

原创 自己实现一个new 运算符

自己实现一个new 运算符function _new(){ //首先拿到函数 这里也可以使用ES6 Array.from将arguments转为数组,但是因为我们后面要用到除了fun以外的其他参数,给call使用,所以用shift更合适 var fun = [].shift.call(arguments); // 创建一个新的对象,让它继承fun的原型 var obj = Object.create(fun.prototype); //改变this的指向,让this指向刚才传创建的obj va

2020-06-02 19:31:11 388

原创 前端继承的几种方法

原型链继承function Person(){ this.name = "hello", this.hobby = ['唱歌','踢球'];}function Child(){}//关键代码Child.prototype = new Person();Child.prototype.constructor = Child;var child = new Child();child.hobby .push('跑步');var child2 = new Child();con

2020-05-29 18:43:16 4377 2

原创 实现Array.prototype._splice函数

/** splice 函数运行完返回值是被删除的数组数据*/Array.prototype._splice = function(strat, deleteCount, ...addList){ if(strat < 0){ if(Math.abs(start) > this.length){ //如果绝对值大于length都是从下标0开始 start ==0; }else{ // start为负值时候,换算为从正向下标开始 比如 -1,就是

2020-05-22 11:11:26 185

原创 实现一个promise.retry

实现一个promise.retry```javascript/* 实现一个Promise.retry 函数,使得某个函数执行得结果如果是失败请求一定的次数之后再reject,失败后间隔某个时间段之后重试,尝试超过一定次数才真正的 reject*//** * 用随机数模拟数据数据请求 */function getRandom(){ return new Promise((resolve, reject) => { let data = Math.random(

2020-05-21 18:02:01 493

原创 express生成器express generator

express 生成器安装cnpm install express generator -g创建项目set DEBUG=myapp:* &amp; npm startset DEBUG=myapp:* &amp; npm start安装依赖cnpm install启动服务(1)node bin/www(2)webstorm配置,然后可以调试node.js代码1.换掉jade ...

2018-10-03 14:35:26 349

原创 css 定位有哪些?分别说明?

qww

2018-09-10 17:27:45 432

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除