javascript基础
文章平均质量分 80
基本介绍javascirpt基础,以及本人在工作遇到的问题
scottdao
前端我保存着自己的一腔热爱,就就好像恋爱的感觉,幸福,痛苦,就是人生五味,酸甜苦辣咸,皆有存在
展开
-
classnames用法/源码分析及工具
classnames的基础用法归集classnames这个插件在react项目业务中用的相对来说是比较多的,那这个插件是用来干什么的呢,它是用来合并类名的,存在多个类名变量时,想添加到对应的元素中,是可以采用类名,这种插件在react相关业务使用比较多,因为react代码的业务场景,非常适合变量和元素的绑定,而classnames很好迎合react的相关的业务场景。那我们先来看classnames相关用法吧基础用法classnames这个可以是两个参数以上,类型可以字符串或者对象,如果是字符串,原创 2022-03-13 13:32:14 · 8076 阅读 · 0 评论 -
typescript基础使用
基础类型number string array boolean object never null undefinedlet a:string = '1231'enum枚举类接口给前端返回一个status字段enum NamesStatus{ ABNHY='start' NOABNHY = 'noStart'}type interfacetype num = { a:number, b:string}interface Num{ .原创 2021-11-03 17:44:51 · 127 阅读 · 0 评论 -
模块化详解
模块化详解在讲模块化理解之前,首先得疏理一下,模块的化的发展流程真正的模块开启由于nodejs在2009年发布,带来commonjs,将模块化开发带来白热化时代,那么commonjs的特点是什么,接下来为您介绍:通过requirejs进行模块加载,采用同步加载commonjs它只服务于服务端模块加载器和模块解析器模块加载器:采用fs解析文件路径,将相对路径解析绝对文件路径,加载文件代码,并解析执行模块加载器:采用模块加载解析执行字符串代码,通过exports暴露模块; 模块可以多次加载,原创 2021-10-16 14:00:42 · 129 阅读 · 0 评论 -
promise源码解析之手写源码
promise源码解析之手写源码如何实现手写promise那我们必须要了解a+规范,在上一节,我们已经将a+规范简单的梳理了一遍,下面我们带着a+规范,将promise手写一遍逻辑*规范-:*需要定义三种状态—pedding/fulfiled/rejectconst PENDING = 'pending'const FULFILLED = 'fulfilled'const REJECTED = 'rejected'已经定义好了三种状态,接下来需要对状态进行初始化class Mod.原创 2021-10-12 22:10:09 · 218 阅读 · 0 评论 -
promisepromise源码解析之A+规范
promise源码解析(一)及A+规范实现promisePromise是实现异步比较有意思的类,在日常开发中,它也给我们带来不一样的体验,接下来让我们了解一下Promise对象及promiseA+规范吧promise概念then方法函数回调函数或者方法thenable 有着then函数的方法value是成功状态的值,通过resolvereason失败状态的rejectedexception抛异常状态机pedding初始态fulFilled成功后状态rejected失败后原创 2021-09-27 11:26:52 · 97 阅读 · 0 评论 -
基于javascript的数据结构实现(一)
数据结构数据结构是做为程序员必须的了解的必备基础知识,也是必备素养之一,接下来为大介绍比较常见几种的简单基础的数据结构;堆栈堆栈:这种数据结构,你必须要它的特点就是:后进先出,就好像吃进去的,吐出来一样,这样比喻不文雅,但很形象接下来,我用js为大家实现一下,利用数组实现,便于理解,时间复杂度为o(1), 空间复杂度为o(n);function Stack() { var items = []; // 进栈 this.push = function(value) { i原创 2020-06-30 19:42:14 · 200 阅读 · 0 评论 -
javascript闭包,高阶函数及防抖节流实现
闭包与高阶函数本文描述了作用域,闭包,内存管理的理解及高阶函数面向切面编程,节流防抖函数多种实现方案作用域理解作用域:var a = 2,引擎干了那些活遇见 var a,编译器会询问当前作用域是否存在该变量,存在,忽略;不存在,在当前作用域下,声明该变量,并命名为 a;运行处理 a=2 时,引擎会询问当前作用域集合是否存在 a 的变量;存在就使用该变量,不存在继续向外层作用域查找该变量;找到了,将 2 赋值给 a,没找到,则抛出异常;总结: 变量赋值会有两个动作,当前作用域声明该变量原创 2020-05-31 18:50:17 · 477 阅读 · 0 评论 -
javascript实现常用的设计模式
基于 javascript 的常用设计模式的实现设计模式是语言编程的一种技巧,提高的代码优雅性,可读性,也是为了提供代码性能。接下来为大家介绍几种常见的设计模式及几种非常相似的设计放在一起去对比。单例模式定义: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。场景: 登录按钮点击出现登录浮窗,只会被创建一次代码示例: var Transparent = (function(){ var ins = null; var S = functio原创 2020-05-27 16:35:59 · 160 阅读 · 0 评论 -
this,apply和call
jsvascript 中的 this/apply/callthis定义:javascript 中 this 总是指向一个对象,指向哪个对象,则根据函数执行环境动态绑定,不是函数声明。this 的指向1.对象方法调用 var obj = { a:0, getA:function(){ console.log(this === obj); // true console.log(this.a) // 0原创 2020-05-19 13:58:48 · 110 阅读 · 0 评论 -
正则简单的应用
正则表达式正则表达式,是我们日常开发中经常会运用到的。当然对于一些复杂的正则表达式,当然可以通过网络去搜索可以节约时间;对于运用到的一些简单的,自己动手去写可以节约一些时间,也是自己技术能力体现...原创 2019-11-09 17:37:41 · 148 阅读 · 0 评论 -
数组操作常用的方法
常用数组操作函数方法在讲数组操作方法前,先来说说数组的一些概念吧,如何申请成为数组,数组如何去定义的。定义:具有连续内存,存在一定空间大小类对象(区别于链表而下的定义)。在js中创建数组的的两种方式:var a = [];var b = new Array();总:上面的两种代码采用都通过声明变量的方式,第二种使用了类对象构造函数创建的。接下来讲讲操作数组的方法;添加一个或多...原创 2019-05-16 17:05:48 · 944 阅读 · 0 评论