- 博客(11)
- 收藏
- 关注
原创 柯里化函数
/***柯里化函数:固定某个函数的一些参数,得到该函数剩余参数的一个新函数,如果没有剩余参数,则直接调用**/function curry (func){ var args = Array.prototype.slice.call(arguments,1) var that = this return function(){ var curArgs = Array.form(arguments) var totalArgs = args.concat(curArgs) if(tota
2022-04-01 17:37:57
67
原创 js原型继承
圣杯模式继承function inherit(son , father){ var Temp = function(){}; Temp.prototype = father.prototype; son.prototype = new Temp(); son.prototype.constructor = son; son.prototype.uber = father.prototype;}//orfunction inherit(son , father){ var Temp = f
2022-03-21 18:57:25
71
原创 执行上下文 顺序
执行上下文 顺序确定所有形参值以及特殊变量arguments确定函数中通过var 声明的变量,将它们的值设为 undefined,如果vo中已有该名称,则直接忽略确定函数中通过字面量声明的函数,将它们的值设置为指向函数对象,如果vo中已经存在该名称,则覆盖当一个上下文中的代码执行的时候,如果上下文中不存在某个属性,则会从之前的上下文寻找!优先级排序如下:(自己总结)字面量函数 大于 实参 大于 变量(变量初始值都视为undefined)fn > arguments > var
2022-03-21 18:46:54
66
原创 sequelize 的数组类型不能存到mysql,即mysql不支持数组类型的数据
解决方法:利用实例的 get set方法,代码如下:const sequelize = require('../db');const { DataTypes } = require('sequelize');const Line = sequelize.define('Line',{ value:{ type:DataTypes.STRING, allowNull:false }, dataOne:{ type:DataTyp
2020-08-27 13:57:55
1150
原创 webpack 搭建全栈项目 问题二
项目说明:利用 webpack 搭建全栈项目;后端 nodejs;前端 vue ;后端框架 express ;ORM框架 sequelize 。问题:安装 sequelize 时同时安装上了 mysql2 , 但报错未安装,详情如下:报错如下:ERROR in ./server/node_modules/sequelize/lib/dialects/postgres/hstore.jsModule not found: Error: Can't resolve 'pg-hstore' in
2020-08-25 18:44:29
501
原创 webpack 搭建全栈项目 问题一
项目说明:利用 webpack 搭建全栈项目;后端 nodejs;前端 vue ;后端框架 express ;ORM框架 sequelize 。问题:安装 sequelize 时同时安装上了 mysql2 , 但报错未安装,详情如下:代码如下:const { Sequelize } = require('sequelize');const sequelize = new Sequelize('advdb', 'root', '123456', { host: 'localhost'
2020-08-25 18:36:39
518
1
原创 node相关
Node一、数据驱动和orm1.mysql驱动程序是连接内存数据和mysql数据的桥梁mysql的驱动程序通常使用 mysql(官方的) 和 mysql2(优化做的好一些,性能更好)劣势:一旦数据库更换,开发的大量代码作废2.orm:object relational mapping 对象关系映射通过orm框架可以自动把程序中的对象和数据库进行关联。node中的orm框架有Sequelize 和 typeORM区别:Sequelize 支持js、ts、比较成熟;typeORM只支持ts
2020-08-18 12:16:15
673
原创 防抖 和 节流 以及区别
防抖:一个函数在需要频繁的触发情况时,只有在足够空闲的时间才执行一次。节流:一个函数只有在大于等于执行周期时才执行,周期内调用不执行。/***防抖*应用场景:实时搜索、拖拽**/function debounce(handler,delay){ let timer = null; return function(){ clearTimeout(timer); timer = setTimeout(()=>{
2020-07-25 18:22:12
2773
原创 浅度克隆 和 深度克隆 的区别
//浅度克隆: 被拷贝的对象 和 拷贝的对象 引用值改变两者都会相应的改变//深度克隆: 被拷贝的对象 和 拷贝的对象 引用值和原始值改变两者都不会相互影响//浅克隆function clone( origin , target ){ var target = target || {}; for(let prop in origin){ target[prop] = origin[prop] } return target;
2020-07-25 16:08:16
301
原创 VueRouter路由原理以及hash模式与history模式的区别
<script> // hash路由原理*************************** // 监听hashchange方法 window.addEventListener('hashchange',()=>{ div.innerHTML = location.hash.slice(1) ...
2020-04-16 15:43:14
369
原创 剖析VUE响应式原理
<script> const data = { msg:'hello', age:18, obj:{ name:'me' }, arr:[1,2,3] } // 1.观察对象用Object...
2020-04-16 15:25:15
79
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人