
javascript
文章平均质量分 50
kgduu
这个作者很懒,什么都没留下…
展开
-
javascript之字符串
groups:一个对象,其键是使用的组名,其值是匹配的部分(如果不匹配则未定义)。仅当模式包含至少一个命名的捕获组时才出现。offset:表示匹配项在整个字符串的偏移。, pn:表示捕获项。string:表示被检查的整个字符串。match:表示匹配的字符串。原创 2023-04-19 14:46:01 · 163 阅读 · 0 评论 -
Object.create(null)与let o = {}区别
而使用let o = Object.create(null),因为创建的对象的原型为null,不会继承Object,是没有任何属性的对象。在阅读 vue 源码中,会看到使用Object.create(null)来创建不带有属性的对象。为什么不使用let o = {}呢?因为使用let o = {},对象o还是继承Object,会继承Object的一些方法,如toString等。原创 2023-04-18 22:40:11 · 128 阅读 · 0 评论 -
javascript之面向对象
Object.assign执行的是浅复制,在有多个源的情况下,如果key有相同的,则以最后的一次为准。对象合并也称为mixin,js提供了方法Object.assign.原创 2023-04-14 12:03:57 · 477 阅读 · 0 评论 -
javascript之数组
复制使用copyWithin,复制指定范围内的元素,填充到指定索引开始的位置,与fill一样,也支持负索引,对于索引区间过低,过高,或者负长度区间忽略,对于部分区间可用的,复制可用部分。indexOf:第一个参数是要查找的元素,第二个为可选参数,表示开始搜索位置,返回要查找元素在数组中的下标,没有找到时返回 -1。splice:可以对数组添加(传3个参数,开始位置,0,要插入的元素),删除(2个参数,开始位置,要删除的元素个数),替换。在设置时,如果指定的索引超过范围,会将数组的长度修改为索引值+1。原创 2023-04-14 10:07:40 · 537 阅读 · 0 评论 -
javascript思维导图(更新中)
javascript思维导图原创 2022-08-21 10:22:01 · 395 阅读 · 0 评论 -
javascript之RegExp
javascript中的RegExp原创 2022-07-18 20:20:31 · 1019 阅读 · 0 评论 -
正则表达式中(?:pattern)、(?!pattern)、(?<=pattern)和(?<!pattern)
正则表达式中(?:pattern)、(?!pattern)、(?<=pattern)和(?<!pattern)原创 2022-07-17 13:30:29 · 216 阅读 · 0 评论 -
crypto-js加解密库
1、资料链接https://www.npmjs.com/package/crypto-js原创 2022-05-25 22:52:03 · 1550 阅读 · 0 评论 -
变量解构详解
1、基本用法数组解构var [a, b, c] = [1, 2, 3] a = 1, b = 2, c = 3嵌套解构//完全解构let [foo, [[bar], baz]] = [1, [[2], 3]] foo=1, bar=2, baz=3let [, , third] = ["foo", "bar", "baz"]third=bazlet [x, , y] = [1, 2, 3]x=1, y=3let [head, ...tail] = [1, 2, 3,原创 2022-05-13 21:24:11 · 538 阅读 · 0 评论 -
前端最流行的 10 大顶级开源项目
deno 2020 年增长 30.2K 一个安全的 JavaScript 和 TypeScript 运行时。出于多种原因,2020 年是非常特殊的一年。最重要的一个:5 年以来的第一次,新星的总冠军不是 Vue.js,而是 Deno……真是令人惊讶!Deno 是 Node.js 的创建者 Ryan Dahl 的 JavaScript 运行时。凭借 10 年的经验和对 Node.js 的迭代经验,它通常被视为 Node.js 的续集,因为它可以修复或改进许多要点。https:/原创 2022-05-01 17:02:52 · 7874 阅读 · 0 评论 -
JavaScript库资源
包管理器托管JavaScript库并提供用于获取和打包它们的工具。npm - npm是JavaScript的包管理器。 Bower - 网络包管理器。 component - 用于构建更好的Web应用程序的客户端包管理。 spm - 全新的静态包管理器。 jam - 使用以浏览器为中心且与RequireJS兼容的存储库的包管理器。 jspm - 无摩擦浏览器包管理。 恩德 - 无库图书馆。 volo - 从模板创建前端项目,添加依赖项并自动生成项目。 Duo - 下一代软件包管理器,原创 2022-05-01 16:22:40 · 1760 阅读 · 0 评论 -
lightningJS之动画
1、渲染引擎元素位置支持的属性名称 类型 默认值 描述 x Float 0 相对父对象的x坐标 y Float 0 相对父对象的y坐标 w Float 0 宽度,如果没有设置,从激活的纹理继承 h Float 0 高度,如果没有设置,从激活的纹理继承 mount Float 0 相对坐标(与x,y相等)的纹理对齐 mountX Float 0 水平轴的原创 2022-02-20 13:44:50 · 2570 阅读 · 0 评论 -
lightingJS
1、简介一个使用WebGL渲染的开源js开发平台,用于高性能、基于浏览器的TV应用。2、安装npm install -g @lightningjs/cli原创 2022-02-19 16:48:32 · 643 阅读 · 0 评论 -
数据库实体关系图
t-x的数据库实体关系图原创 2021-12-19 16:40:55 · 924 阅读 · 0 评论 -
Dynamoose
1、安装npm install --save dynamoose参考资料:Dynamoose - DynamoDB Client and SDK [JavaScript] | Dynamoose原创 2021-12-19 15:00:33 · 183 阅读 · 0 评论 -
路由在express中的实践
1、定义模块的路由module.exports = { '/opportunities/:opportunityId/discussionPosts': { get: { controller: 'DiscussionPostsController', method: 'getDiscussionPosts', auth: 'jwt' }, post: { controller: 'DiscussionPostsControl原创 2021-12-19 13:35:46 · 269 阅读 · 0 评论 -
sequelize的应用
1、定义model形式如下:module.export=(sequelize)=> {class ModelName extends Model {}ModelName.init({}, {});}module.exports = (sequelize) => { class User extends Model { /** * Create association between models * @param models the原创 2021-12-19 13:08:13 · 412 阅读 · 0 评论 -
tc-auth-lib学习笔记
函数有configureConnectorgetFreshTokenisTokenExpireddecodeToken.configureConnector函数参数为对象,支持的参数有{connectorUrl, frameId, mockMode, mockToken}。根据connectorUrl和frameId在dom中创建iframe,同时创建loading的Promise。export function configureConnector({ connectorUrl,原创 2021-07-25 14:29:38 · 180 阅读 · 0 评论 -
javascript高级程序设计之BOM
1、window对象bom的核心对象是window,表示浏览器的一个实例。在浏览器中,window对象有双重角色,既是通过javascript访问浏览器窗口的一个接口,双是原创 2021-06-05 11:29:31 · 134 阅读 · 0 评论 -
nyc检测Javascript代码覆盖率
1、安装npm install参考资料:https://github.com/istanbuljs/nyc原创 2021-05-29 20:02:43 · 774 阅读 · 1 评论 -
mocha测试框架
参考资料:https://mochajs.org/原创 2021-05-29 12:59:05 · 149 阅读 · 0 评论 -
npm命令
1、本地安装npm install <modulename>2、全局安装npm install <modulename> -g3原创 2021-05-29 12:51:27 · 220 阅读 · 0 评论 -
Swagger Editor教程
Swagger是一个简单但功能强大的API表达工具,是目前现有的最大API工具生态系统。使用Swagger生成API,我们可以得到交互式文档,自动生成代码的SDK以及API的发现特性等。安装Windows上的安装1、首先需要安装node和npm。你可以在cmd命令行看到你的安装信息。使用命令node -v和npm -v,可以用来查看版本信息。2、安装后,还需要安装http-server。使用命令npm install -g http-server。3、接着去Swagger Editor官网下载源原创 2021-05-29 09:24:28 · 513 阅读 · 0 评论 -
Sequelize框架
1、创建架构async createSchema(schema:string, options:object):Promise用于创建数据库架构原创 2021-05-27 22:15:19 · 438 阅读 · 0 评论 -
joi检验框架
joi让你使用简单、直观、可读的语言来描述数据原创 2021-05-23 20:43:01 · 3033 阅读 · 0 评论 -
winston日志框架
winston是一个简单、通用的日志库,支持多种transports。transport是一个存储设备。每个winston日志可以有多个不同日志级别的transport.winston目的是解耦日志处理,使得更自由及易扩展。关注点在日志格式、日志级别上更灵活,保证了这些api与transport日志解耦。1、日志日志级别有const levels = {error:0,warn:1,info:2,http:3,verbose:4,debug:5,silly:6};..原创 2021-05-23 16:17:12 · 3353 阅读 · 2 评论 -
lodash工具
1、语言函数 说明 参数 返回值 _.isArray(value) 检查value是否是Array类对象 value要检查的值 boolean,如果value是一个数组返回true,否则返回false _.isUndefined(value) 检查value是否是undefined value要检查的值 boolean,如果value是undefined,返回true,否则返回false 2、集合函数 说明 参数 .原创 2021-05-22 20:55:05 · 217 阅读 · 0 评论 -
express框架
1、中间件指的是函数可以访问请求对象req,响应对象res,请求-响应环中的next函数1.1 错误处理中间件包含四个参数形式如下function middleware(err, req,res,next) {}app.use(middleware)原创 2021-05-22 20:38:27 · 196 阅读 · 0 评论 -
angular环境搭建
1、安装typescriptnpm install -g typescript2、安装angular-clinpm install -g @angular/cli原创 2021-05-12 21:11:22 · 97 阅读 · 0 评论 -
用div来创建田字布局
创建四个div,每个设置float:left,并且将第三个div添加属性clear:left原创 2017-05-08 12:48:54 · 2802 阅读 · 0 评论 -
doctype的三种类型
XHTML 1.0 提供了三种DTD声明可供选择: * 过渡的(Transitional):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的写法),完整代码如下: http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> * 严格的(Strict):要求严格的DTD,你不能使用任何表现层的标识和属性,例如原创 2017-05-03 22:07:57 · 553 阅读 · 0 评论 -
h5中的一些配置
1、防止手机中网页放大和缩小 当然,user-scalable=0,有的人也写成user-scalable=no,都可以的。2、apple-mobile-web-app-capableapple-mobile-web-app-capable是设置Web应用是否以全屏模式运行。语法:1<meta原创 2017-04-29 21:17:32 · 1214 阅读 · 0 评论 -
html&css学习笔记
1、用来标记文档所使用的语言原创 2016-12-26 11:30:59 · 421 阅读 · 0 评论 -
深入探寻seajs的模块化与加载方式
由于一直在使用,所以了解了下seajs的源代码。这里是我对下面几个问题的理解:1、seajs的require(XXX)的方法是怎样实现模块加载的?2、为什么需要预加载?3、为什么需要构建工具?4、构建前后的代码究竟有些什么区别,为什么要这么做?问题1: seajs的require(XXX)的方法是怎样实现模块加载的?代码逻辑比较绕,对源代码的理解放在转载 2017-03-31 17:09:25 · 679 阅读 · 0 评论 -
javascript高级程序设计之函数表达式
1、闭包指有权访问另一个函数作用域中的变量的函数。创建闭包的常见方式,在一个函数内部创建另一个函数。1.1 闭包与变量闭包只能取得包含函数中任何变量的最后一个值。1.2 关于this对象匿名函数的执行环境具有全局性,this指向全局作用域对象2、模仿块级作用域函数表达式的后面可以跟圆括号,将函数声明转换成函数表达式,只要将函数声明部分加上一对圆括号。可以限制向全局作用域中添加过多的变量和函数。3、私有变量函数中定义的变量可以认为是私有变量...原创 2021-03-21 21:09:48 · 118 阅读 · 0 评论 -
javascript高级程序设计之面向对象的程序设计
1、概述对象定义为无序属性的集合,其属性可以包含基本值、对象或者函数。对象的每个属性或方法都有一个名字,而每个名字都映射到一个值。可以把ECMAScript的对象想象成散列表,无非就是一组键值对,其中值可以是数据或函数。2、理解对象2.1 属性类型...原创 2021-03-21 17:12:51 · 232 阅读 · 0 评论 -
javascript高级程序设计之引用类型
1、概要引用类型的值(对象)是引用类型的一个实例。在ECMAScript中,引用类型是一种数据结构,用于将数据和功能组织在一起,也称为类。ECMAScript从技术上讲是一门面向对象的语言,便它不具备传统的面向对象语言所支持的类和接口等基本结构。引用类型有时候也被称为对象定义。2、Object类型创建方式有两种,一种是new Object,另外一种是使用对象字面量表示法{key:value,...}形式属性访问方式有两种,一种是点表示法,另外一种是使用方括号语法,方括号语法的优点是可以通过变原创 2021-03-06 23:15:42 · 193 阅读 · 0 评论 -
javascript高级程序设计之变量、作用域和内存问题
1、基本类型和引用类型的值1.1 动态属性原创 2021-02-28 20:41:20 · 143 阅读 · 1 评论 -
javascript高级程序设计之基本概念
1、语法1.1 区分大小写变量、函数名和操作符都区分大小写1.2 标识符标识符是指变量、函数、属性的名字,或者函数的参数。标识符可以是按照下列格式规则组合起来的一或多个字符第一个字符必须是一个字母、下划线(_)或一个美元符号($) 其它字符可以是字母、下划线、美元符号或者数字标识符中的字母也可以包含扩展的ASCII或Unicode字母字符,但我们不推荐这样做按照惯例,ECMAScript标识符采用驼峰大小写格式,也就是第一个字母小写,剩下的每个有意义的单词的首字母大写。1.3原创 2021-02-24 23:20:44 · 201 阅读 · 0 评论 -
JS中的let和var的区别
ES6 新增了let命令,用来声明局部变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效,而且有暂时性死区的约束。在ES6之前,我们都是用var来声明变量,而且JS只有函数作用域和全局作用域,没有块级作用域,所以{}限定不了var声明变量的访问范围。ES6新增的let,可以声明块级作用域的变量。let非常适合用于for循环内部的块级作用域。JS中的for循环体比较特殊,每次执行都是一个全新的独立的块作用域,用let声明的变量传入到 for循环体的作用域后,不会发生改变,.原创 2021-02-01 07:20:58 · 245 阅读 · 0 评论