自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

个人前端记录

https://github.com/shaotianyu

  • 博客(7)
  • 收藏
  • 关注

原创 Promise的事件循环

1.Promise 新建后立即执行let promise = new Promise(function(resolve, reject) { console.log('Promise'); resolve();});promise.then(function() { console.log('resolved');});console.log('我是同步任务');打印结果依...

2018-09-26 19:52:43 1921

原创 Proxy 实现观察者模式

以下参考阮老师的《ECMAScript 6 入门》需求:给定一个对象,当对象的属性发生赋值时,打印最新的值。思路: observable 函数返回一个原始对象的 Proxy 代理,拦截赋值操作,触发充当观察者的各个函数。//初始化观察者队列const uniqueObserveList = new Set();//将监听回调加入队列const observe = fn =>...

2018-09-20 21:29:31 819

原创 js中的super

1.this和super的区别:this关键词指向函数所在的当前对象super指向的是当前对象的原型对象2.super的简单应用const person = { name:'jack'}const man = { sayName(){ return super.name; }}Object.setPrototypeOf( m...

2018-09-12 22:27:30 17609 2

原创 Object.assign()扩展-实现原型链拷贝

Object.assign()的基本语法:将源对象(source)的所有可枚举属性的实例属性复制到目标对象(target)。Object.assign( target, source1, source2, ... )所以,Object.assign()复制的属性是有限制的:只复制源对象的自身实例属性,不复制原型属性(继承属性);只复制可枚举属性(enumerable:true)...

2018-09-12 00:03:09 1326

原创 ES5实现Object.is()

ES5中的==和===存在着问题,==会自动转换数据类型;===情况下NaN不等于NaN,+0等于-0NaN === NaN //false+0 === -0 //trueES6中的Object.is() 判断两个值是否相同。即只要两个值是一样的,它们就应该相等。Object.is(NaN, NaN) //trueObject.is(+0, -0)...

2018-09-11 21:10:36 1059

原创 JS类数组转数组方法汇总

一.什么是类数组拥有length属性,其它属性(索引)为非负整数(对象中的索引会被当做字符串来处理,这里你可以当做是个非负整数串来理解)不具有数组所具有的方法经常遇到的类数组:DOM 操作返回的 NodeList 集合、函数内部的 arguments 对象。。。二.类数组转数组假设类数组对象为arrayLikeObject。1.for遍历声明一个空数组,通过遍历伪数组...

2018-09-06 17:41:36 1092 1

原创 一元操作符“++”,“- -” 之强制转换数值

递增和递减分别有前置型和后置型,这里不作区分。下面的代码全部是后置型递增:var str = "z";console.log(str++) //NaNconsole.log(typeof str) //numbervar str = "123abc";console.log(str++) //NaNconsole.log(typeof str) ...

2018-09-03 23:08:20 415

空空如也

空空如也

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

TA关注的人

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