回到顶部 Fork me on GitHub

随笔分类 -  JavaScript

JavaScript中继承的多种方式和优缺点
摘要:1. 原型链继承 优点: 无 缺点: 创建子类实例时,不能向父类的构造函数中传递参数 父类中所有引用类型的属性会被所有子类实例共享,也就说一个子类实例修改了父类中的某个引用类型的属性时,其他子类实例也会受到影响 2. 借用构造函数继承(经典继承) 优点: 在子类构造函数中可以向父类的构造函数中传递参 阅读全文

posted @ 2020-04-03 19:00 难凉热血,码梦为生! 阅读(457) 评论(3) 推荐(0)

原生JS实现call,apply,bind函数
摘要:1. 前言 使用原生 实现 和`apply call apply this call apply`只接受一个参数数组。 2. call函数 2.1 描述 方法使用一个指定的 值和单独给出的一个或多个参数来调用一个函数。 2.2 语法 2.3 参数 thisArg :可选的。在 fun 函数运行时指定 阅读全文

posted @ 2019-07-31 14:04 难凉热血,码梦为生! 阅读(871) 评论(0) 推荐(0)

Promise A+ 规范【中文版】
摘要:0. 前言 本文为 规范的中文译文, 规范英文版原文链接: "Promise A+" 。 正文如下: 一个开放、健全且通用的 JavaScript Promise 标准。由开发者制定,供开发者参考。 Promise 表示一个异步操作的最终结果,与之进行交互的方式主要是 方法,该方法注册了两个回调函数 阅读全文

posted @ 2019-07-28 21:52 难凉热血,码梦为生! 阅读(1064) 评论(0) 推荐(0)

通俗易懂了解函数的防抖和节流
摘要:1.前言 在一次面试中被问到:“谈一谈js中函数的防抖和节流。”,当时菜鸡如我的内心: 只能弱弱的说一句没怎么了解过。后来找到工作后就将这件事抛在脑后,也没在深究。 就在前几天维护公司内部代码的时候,发现这样一个场景:当用户在创建东西时,会把用户输入的名字发往服务端校验是否重名,而当时的代码是监听了 阅读全文

posted @ 2019-07-19 14:15 难凉热血,码梦为生! 阅读(928) 评论(5) 推荐(1)

树形多级菜单数据源嵌套结构与扁平结构互转
摘要:1.前言 在日常开发中,往往会有这样的需求:根据后端返回的数据,动态渲染出一颗多级导航菜单树,类似于计算机中资源管理器的样子。如下图所示: 要实现这样的需求,其实不难,只是对后端返回的数据源有要求,如果后端返回的数据能够很清楚的表现出节点与节点之间的层级关系,那么前端实现起来就易如反掌。 2.数据源 阅读全文

posted @ 2019-01-08 21:17 难凉热血,码梦为生! 阅读(5172) 评论(3) 推荐(0)

原生JS封装_new函数,实现new关键字的功能
摘要:1.前言 众所周知:没有对象怎么办?那就new一个! 那么在JS中,当我们new一个对象的时候,这个new关键字内部都干了什么呢? 现在我们就来剖析一下原生JS中new关键字内部的工作原理。 2.原生的new 首先,我们先new一个对象看看: 打印结果: 从打印结果中可以看到: 用new关键字实例化 阅读全文

posted @ 2018-09-26 13:38 难凉热血,码梦为生! 阅读(737) 评论(0) 推荐(0)

JavaScript如何友好的操作的cookie
摘要:1.前言 众所周知,在JS中处理cookie有些复杂,因为其操作cookie的接口相当不友好,即BOM的 属性。这个属性的独特之处在于它会因为使用它的方式不同而表现出不同的行为。 当用来获取属性时, 返回当前页面可用的所有cookie的字符串,即一系列有分号分隔的键值对,并且所有键和值都是经过URL 阅读全文

posted @ 2018-09-16 13:44 难凉热血,码梦为生! 阅读(335) 评论(0) 推荐(0)

javaScript中this到底指向谁
摘要:1.前言 在JavaScript中,this的指向一直是大多数初学者的易错点,总是搞不清楚this到底指向谁,而在求职面试中,this的指向问题往往又是高频考点。本篇博文就来总结一下在JavaScript中不同情况下this到底指向谁。 2.热身一下 首先,我们先来看看下面的代码,请问,下面这段代码 阅读全文

posted @ 2018-09-04 13:57 难凉热血,码梦为生! 阅读(310) 评论(1) 推荐(1)

使用webpack+babel构建ES6语法运行环境
摘要:1.前言 由于ES6语法在各个浏览器上支持的情况各不相同,有的浏览器对ES6语法支持度较高,而有的浏览器支持较低,所以为了能够兼容大多数浏览器,我们在使用ES6语法时需要使用babel编译器将代码中的ES6语法编译为ES5语法,下面就开始搭建一个基于webpack+babel的ES6语法运行环境。 阅读全文

posted @ 2018-08-12 01:23 难凉热血,码梦为生! 阅读(1195) 评论(0) 推荐(0)

JS中的两种数据类型以及实现引用类型的深拷贝
摘要:一.前言 我们知道,在JS中数据类型按照访问方式和存储方式的不同可分为基本类型和引用类型。基本类型基本类型有String、Boolean、Number,Undefined、Null,这些基本类型都是按值传递的,也称为值类型。 引用类型引用类型有对象、数组、函数,它们都是按引用访问的。 二.存储方式区 阅读全文

posted @ 2018-08-12 00:58 难凉热血,码梦为生! 阅读(383) 评论(0) 推荐(0)

导航