
JavaScript
小火柴FE
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Object.defineProperty实现数据双向绑定
1 前言作为一名前端开发人员,我们或许都听说过Vue 2.0中实现双向数据绑定采用了Object.defineProperty,我相信有很多小伙伴们和我一样有疑问,这个神奇的东西是怎么做到的呢?在介绍Object.defineProperty之前,我们先来认识一下什么是属性类型。2 属性类型ECMA-262描述道:ECMA-262 第5 版在定义只有内部才用的特性(attribute)时...原创 2020-05-06 12:11:49 · 1203 阅读 · 0 评论 -
JavaScript中的浅拷贝和深拷贝
一、前言我第一次接触浅拷贝和深拷贝的概念是在学C和C++的时候,虽然现在已经差不多忘得干干净净了,但我记得一点的是它们和内存是有关系的。之后再看到这个概念在面试中提到,我天真的以为,浅拷贝就是这样子的:var a = { name: '老曹' };var b = a;后来大致搞懂后,才知道我是多么的无知…在讲解之前我相信大家对堆和栈的概念已经有所了解了,至少应该知道:栈中存储基本类...原创 2019-11-26 12:32:26 · 259 阅读 · 0 评论 -
JS中常用实现继承的方法(Object.create的原理)
(讲之前假定各位看官已经对原型相关了如指掌啦,否则阅读起来有一点困难哦)组合继承(最常用的继承)这种继承方式组合了原型链和借用构造函数的方式,实现了一个最为常用继承的方式。主要有几个很关键的步骤:在子类构造函数调用父类构造函数,使用call或apply来指定父类中的this为子类。这相当于子类有了父类构造函数中属性以及方法,此时便传入参数即可。注意的是原型中的属性和方法还是访问不到的。...原创 2019-09-12 20:16:03 · 1459 阅读 · 1 评论 -
JavaScript中创建对象的几种方式
字面量 / Object构造函数这种方式相信大家都会,其实它们原理都是一样的,都是JS内置的对象Object,但是它们都是暴露在外面,代码冗余度高,也不清晰,而且无法复用,所以就有了之后的工厂模式。工厂模式工厂模式其实是设计模式中的一种,可以“批量生产”对象,我们先看看是怎么创建对象的:function createObject(name, age) { const obj = new ...原创 2019-09-11 17:51:18 · 859 阅读 · 1 评论 -
JS中鲜为人知的属性类型
文章目录前言属性类型介绍数据属性访问器属性定义多个属性总结前言我们都听说过数据类型,引用类型,那你肯定很少听过属性类型。我也是看了JS高程才知道的,虽然平时见的真的挺少,那对于理解这门语言真的有很大的帮助,其实属性这个概念一般都是讲对象的时候才用到,而且也有没特别关注属性还有类型这门事,好了闲话不多,我们一起来玩玩这个神奇的东西。属性类型介绍属性类型在ECMA-262描述道:ECMA-...原创 2019-08-05 22:42:52 · 229 阅读 · 0 评论 -
JavaScript中的变量、作用域、和内存问题
前言最近开始入坑js“圣经”之一的《JavaScript高级程序设计》,准备深入学习这门“博大精深”的语言,下面我学习第四章的总结及拓展。目录变量js中声明变量的几种方式var:可以声明任意类型的变量,js会根据变量的值来自动判定这个值是什么类型function:主要是声明函数类型的变量,如定义一个函数啥也不加直接写变量下面是es6声明变量的方式let:和var作用一样...原创 2019-07-14 17:13:32 · 222 阅读 · 0 评论 -
原型链,原型对象
原型链大都是围绕着对象来进行的,在此之前,我们需要知道一个问题:创建对象的方法有几种,区别是什么?创建对象的常用的几种方法1.字面量let obj1 = { name: 'laocao', age: 22, sayHi: () => { console.log(`Hello,this is${name}`); } };缺点:复用性差,也就是说,...原创 2019-06-15 19:39:44 · 493 阅读 · 0 评论 -
dom事件
DOM事件常见的问题基本概念:DOM事件的级别DOM0:element.onclick = function() {}DOM2:element.addEventListener(“click”,function(){}, flase)DOM3:element.addEventListener(“keyup”,function(){},false)没有DOM1级是因为DOM标准中并没有...原创 2019-06-13 19:49:25 · 175 阅读 · 0 评论 -
JavaScript实现简易贪吃蛇(面向对象的方式)
简易贪吃蛇JavaScript实现贪吃蛇游戏游戏分析面向对象编程思想(来自百度百科)对象游戏中的对象js如何实现面向对象实现地图的显示随机数对象random食物对象food蛇对象snake游戏对象Game实例化游戏对象并初始化游戏测试后续优化第一次写博客,记录自己的学习,也为了方便日后可以复习,不积跬步无以至千里,加油!贪吃蛇游戏这是一个简单版的贪吃蛇游戏,主要练习面向对象编程思想,方便...原创 2019-06-07 19:21:52 · 1407 阅读 · 0 评论