自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(194)
  • 收藏
  • 关注

原创 javascript将扁平的数据转为树形结构(高效率)

当我们需要将一个一维数组转换成一个多层结构的时候,最简单但是最慢的就是多个for循环嵌套,但是这样做有一些缺点,那就是效率太低、而且有多少层就需要嵌套几个for循环,不好用。我实现了用O(n)级算法将 一个扁平的数组即一维数组代表的菜单结构转换成一个多层级的菜单结构。一位数组中每一个元素必须要包含以下属性:拥有一个唯一的id 拥有一个parent_id, 这个id指向它父级的id其...

2017-11-29 10:16:44 24384 12

原创 在elementUI中使用 el-autocomplete 实现远程搜索的下拉框

在template中添加标签 <el-autocomplete v-model="detail.CUSTOMER_NAME" :fetch-suggestions="querySearchAsync" @select="handleSelect" placeholder="请输入内容"></el-autocomplete> 在

2017-10-31 14:13:20 71606 13

原创 变量命名正则

需求字符开头, 合法内容为字母, 数字, 下划线, 如:a_v_c_111 合法_a_c 不合法111_aaa_b 不合法正则/([a-z])([a-z1-9])*(_([a-z1-9]+))*/

2021-01-13 15:20:21 1391 1

转载 判断浏览器是否滚动到页面底部-兼容写法

、document.documentElement.scrollTop和document.body.scrollTop始终有一个为0,所以可以用这两个的和来求scrollTop2、scrollHeight、clientHeight 在DTD已声明的情况下用documentElement,未声明的情况下用body所以,判断滚动条是否已拉到页面最底部,可以用如下代码:window.ons...

2019-11-10 14:31:29 688

原创 使用router.post()无法获取到req.body

应该用一个router, 然后连续点:router.get() .post() .get() .post() 而不是像下面这样每处理一个URL就去:router.get()router.post()// 应该是这样:router.get('/simple/get', function(req, res) { res.json({ msg: `hello wo...

2019-10-07 16:11:58 3670

原创 小Q游戏 - 字节跳动 2019年9月8日笔试题

题目描述:小Q制作了一个简单的游戏,有排方块,每个方块上是一个自然数正整数或‘>’,‘<’若小在数字方块上,他会得到方块上数字对应的分数,并且方块上的数字会减一。特别的,当小Q走上数字0方块时,他会得到0分,然后将这个方块销毁掉。若在'<'或'>'方块上时,他会改变接下来前进的方向,‘<’代表向左,‘>’代表向右。特别的若小下一个走到...

2019-09-09 11:12:24 562

原创 搞懂闭包

闭包这个概念是前端工程师必须要深刻理解的,但是网上确实有一些文章会让初学者觉得晦涩难懂,而且闭包的文章描述不一。本文面向初级的程序员,聊一聊我对闭包的理解。当然如果你看到闭包联想不到作用域链与垃圾回收也不妨看一眼,希望读了它之后你不再对闭包蒙圈。先体验一下闭包这里有个需求,即写一个计数器的函数,每调用一次计数器返回值加一:counter() // 1counter() // 2coun...

2019-07-24 20:05:08 397

原创 如何自定义排序 aAbBcC 即Excel中的排序,AaBbCc

列举排序中的几种情况,然后逐个进行排序即可const CHAR_CODE_a = 'a'.charCodeAt(0); // 97const CHAR_CODE_A = 'A'.charCodeAt(0); // 65const CHAR_CODE_z = 'z'.charCodeAt(0); // 112const CHAR_CODE_Z = 'Z'.charCodeAt(0);...

2019-07-11 21:14:51 1160 1

原创 JS闭包详解

当内部函数被保存到外部时,将会生成闭包。生成闭包后,内部函数依旧可以访问其所在的外部函数的变量。 详细解释:函数在创建时会获得作用域链,是存储函数能够访问的所有执行期上下文对象的集合,即这个函数中能够访问到的东西都是沿着作用域链向上查找直到全局作用域。当函数执行时,会创建一个称为执行期上下文的内部对象(AO),执行期上下文定义了一个函数执行时的环境。函数每次执行时对...

2019-01-05 15:03:25 308 1

原创 this的指向有哪几种情况?

this代表函数调用相关联的对象,通常页称之为执行上下文。 1. 作为函数调用,非严格模式下,this指向window,严格模式下,this指向undefined;2. 作为某对象的方法调用,this通常指向调用的对象。3. 使用apply、call、bind 可以绑定this的指向。4. 在构造函数中,this指向新创建的对象5. 箭头函数没有单独的this值,this在...

2019-01-04 11:16:32 5875

原创 antd-mobile Picker value 属性不生效

const entranceTimeOptions = [ { value: '2018', label: '2018' }, { value: '2017', label: '2017' }, { value: '2016', label: '2016' }, { value: '2015', label: '2015' }]&lt;Picker data...

2018-12-03 18:17:25 6504

原创 JS数组转对象

一、保留key值和value值1、Object.entries(object)将对象的每一个键值对作为数组元素,其中键与值再被拆成一个数组。const obj = { a:'aa',b:'bb', 8: 'cc', 6:'dd' }; Object.entries(obj) 输出:[ ["6", "dd"], ["8", "cc"], ["a", "aa&quo

2018-11-25 17:38:57 1942

原创 数据库权限实验

SQL&gt; alter table reader enable row movement;Table alteredSQL&gt; flashback table reader to timestamp to_timestamp('2018-11-2319:00','YYYY-MM-DD:HH24:MI');Done创建用户SQL&gt; create user huy...

2018-11-23 20:48:16 479

原创 文件管理课后作业(含7、8章)

一、简答题:1.什么是文件?它包含哪些类型及特点?文件是指由创建者所定义的、具有文件名的一组相关元素的集合。可分为有结构文件和无结构文件两种。在有结构的文件中,文件由若干个记录组成;无结构文件则被看成是一个字符流。特点:具有一系列属性;保存在外存上;一般为程序和数据;是一个自大的数据单位,描述了一个对象集。什么是文件的逻辑结构?它有哪几种组织方式?文件的逻辑结构是是从用户观点出发...

2018-11-22 20:54:39 3914

原创 在antd的标签组件中做路由跳转

使用react-router-dom在组件中可以很方便的使用 Link 标签进行路由跳转。但是我碰到了这样的情况 Warning: validateDOMNesting(...): &lt;a&gt; cannot appear as a descendant of &lt;a&gt;.意思是不能再 &lt;a&gt;标签中重复的出现&lt;a&gt;标签。 显然antd的组件...

2018-11-18 17:10:18 11323

原创 有限差分法和蒙特卡洛随机模拟法

 与需要空间、时间离散的有限差分法不同,随机法(例如蒙特卡洛方法)是另外一种模拟的方法,其无需进行空间和时间的离散。总结随机法的特点,基本思路,并以面积积分为例来分析两种方法的差异和各自的优缺点并恰出随机法适用的领域。 有限差分法微分方程和积分微分方程数值解的方法。基本思想是把连续的定解区域用有限个离散点构成的 网格来代替, 这些离散点称作网格的节点;把连续定解区域上的连续变...

2018-11-16 13:00:38 6822 2

原创 第六章 输入输出系统

一、简答题:1.有几种I/O控制方式?各有何持点?(1)、循环测试 I/O方式(轮询方式)利用I/O测试指令测试设备的闲忙。若设备不忙,则执行输入或输出指令;若设备忙,则I/O测试指令不断对该设备进行测试,直到设备空闲为止。这种方式使CPU花费很多时间在I/O是否完成的循环测试中,造成极大的浪费。(2)、中断处理方式引入中断之后,每当设备完成I/O操作,便以中断请求方式通知CP...

2018-11-16 09:02:27 1355 5

原创 虚拟存储器练习题

1、什么是程序局部性原理?程序局部性主要体现在哪里方面?程序的局部性原理是指程序在执行时呈现出局部性规律,即在一段时间内,整个程序的执行仅限于程序中的某一部分。相应地,执行所访问的存储空间也局限于某个内存区域。局部性原理又体现为:时间局部性和空间局部性。时间局部性是指如果程序中的某条指令一旦执行,则不久之后该指令可能再次被执行;如果某数据被访问,则不久之后该数据可能再次被访问。空间...

2018-11-07 09:30:25 8619 4

原创 在Vue项目中使用百度地图

 第一步,在public文件夹下的index.html中添加百度地图的script&lt;script type="text/javascript" src="https://api.map.baidu.com/getscript?v=3.0&amp;ak=您的密钥&gt;&lt;/script&gt;这里需要尤其注意,官方默认给你的标签是:&lt;script type=...

2018-11-04 16:16:15 3280

原创 触发器

1、通过序列和触发器实现借阅表中借阅流水号字段的自动递增。create sequence lendIdAutoUpstart with 1increment by 1cache 20;2、通过序列和触发器实现预约表中预约流水号字段的自动递增create sequence BookingIdAutoUpstart with 1increment by 1cache 20;...

2018-11-02 21:05:12 1975

原创 存储过程

1、建立存储过程完成图书管理系统中的借书功能。   功能要求:                  l    借书时要求输入借阅流水号,借书证号,图书编号。(即该存储过程有3个输入参数)                        l    借书时,借书日期为系统时间。l    图书的是否借出改为‘是’  create or replace procedure lendBook( ...

2018-11-02 20:04:21 9583

原创 存储器管理练习题

第四章 存储器管理1、什么是静态链接、装入时动态链接和运行时的动态链接? 静态链接是在生成可执行程序的时候就把库中的内容加入到程序中。静态链接在一开始就把所有模块都加载进入内存,所以如果模块很多的话效率就会被大大拉低。载入时动态链接是在将功能模块读入内存时当把一个模块载入内存时检查有调用关系的模块载入内存。运行时动态链接是在执行程序调用到模块内容时再将动态库中的相应模块载入到内...

2018-10-31 20:17:10 10068 10

原创 模拟let的for循环

在异步的环境中使用var很容易就出现问题,可以用let来解决,但也可以使用一个立即执行函数来迭代做这件事情 (function itarator(i){ if(i == files.length){ return; } //fs.stat是一个异步函数 fs.stat('./test/' + files[i], function(err, st...

2018-10-23 17:04:54 302

原创 Brave浏览器 —— 一个当下世界最快的浏览器

给大家安利一个当前世界上最快的新浏览器 ,Brave狮子王浏览器!如果你经常浏览网页,你一定能体会到打开一个网页比寻常时候快了几秒钟是怎样一种体验,一个优秀的浏览器不仅能为你带来流畅的体验,还能为你节约一定的时间。而且他最爽的一点是超级强力的反 tracking,反 cookie 和反 ads。最大化保护隐私! 一直以来我都是chrome浏览器的粉丝,因为chrome的极速还有他...

2018-10-23 15:36:54 89079 6

原创 Node.js没有Web容器的概念

在Apatch这种Web服务器中,只要打开服务器,那么你就可以在浏览器的地址栏通过相对路劲的方式获取到里面的所有资源。比如服务器的www目录下有一张图片,那么只要在浏览器中输入 domain/some.jpg的方式就可以在客户端直接获取到图片。但在Node中这不行现在我创建一个文件夹,文件夹中包含 index.js 、hello.html、lvgu.jpg 这三个文件。其中,在index.j...

2018-10-21 16:31:15 1339

原创 文件流管道(pipe)

在Node.js中读取文件时为使用非阻塞IO, 我们可以这样写: fs.createReadStream('./lvgu.jpg').on('data', (data) =&gt; { res.write(data); }).on('end', () =&gt; { res.end(); })还可以用pipe来简化代码:fs.crea...

2018-10-21 16:29:55 2997

原创 查表

1.  查询"红楼梦"目前可借的各图书编号,及所属版本信息。(是否借出为'否'的图书)select D.ISBN,D.BNAME as 书名from BOOK B, BOOKDETAIL DWHERE D.isbn = B.Isbn AND B.B_ISBORROW = '否' AND D.BNAME = '红楼梦'2、查找高等教育出版社的所有书目及单价,结果按单...

2018-10-19 19:39:00 829 1

原创 fs常用API

查询文件信息fs.stat(path, callback)fs.stat() 方法用于查询文件信息,可以用于查询文件的大小、创建时间、权限等相关信息。fs.stat() 是异步方法,还有一个同步方法 fs.statSync(path)const fs = require('fs')fs.stat('./package.json', (err, stats) =&gt; { ...

2018-10-19 11:55:03 630

原创 操作系统作业 - 进程调度

第三章习题一、问答题1. 高级调度与低级调度的主要任务是什么? 为什么要引入中级调度?高级调度主要任务是:根据某种算法,把外存上处于后备队列中的那些作业调入内存,也就是说高级调度的调度对象是作业。低级调度主要任务是:决定就绪队列中的哪个进程应获得处理机,然后再有分派程序执行把处理及分配给该进程的具体操作。中级调度的任务:是那些暂时不能运行的进程不再占用宝贵的内存资源,而将他们调...

2018-10-16 20:44:35 3569

原创 操作系统练习题 - 进程的描述与控制

什么是并发?什么是并行?用日常生活中的例子举例说明。并发:在同一个时间段内,能够交替执行不同的任务(同一时刻还是只能处理一个事务)。并行:在同一个时间段内,能够同时执行不同的任务。生活中例子:并发:用手机看电影,电话响了接了电话再继续看。并行:用电视看电影,电话响了边接电话边看电影。 在操作系统中为什么要引入进程的概念?它会产生什么样的影响?引入进程:简单的说,...

2018-10-07 17:35:34 2901

原创 操作系统练习 - 缓冲区的写入、加工、输出

假设有输入、加工和输出3个并发进程共享一个缓冲区B,输入进程负责从输入设备读入一条记录,每读一条记录后把它存放在缓冲区B中,加工进程在缓冲区B中加工输入进程存入的记录。输出进程负责把加工后的记录打印输出。缓冲区B中每次只能存放一条记录,当记录被加工输出后,缓冲区B中才可存放下—条新记录。请用P、V操作来描述它们并发执行时能正确工作的程序。 解: 设4个变量。mutex 代表是否有进...

2018-10-07 17:28:56 4127 4

原创 React中的性能优化点

1. 在constructor中绑定事件函数的this指向把一个函数赋值给一个变量,然后用那个变量去执行函数会造成this的丢失,所以需要绑定this,把绑定放在构造函数中可以保证只绑定一次函数,如果放在render函数中绑定this的话每次渲染都会去绑定一次this,那样是很耗费性能的。2. 使用箭头函数也就是异步函数的方式写setStatesetState它是一个异步函数,他会合并...

2018-10-04 10:25:48 299

原创 React生命周期函数

生命周期函数指在某一时刻组件会自动调用执行的函数 React生命周期挂载时的生命周期componentWillMount // 在组件第一次被挂载到页面前的时刻执行componentDidMount // 在组件第一次被挂载到页面后的时刻执行更新时的生命周期shouldComponentUpdate () { return boolenValue } // 组件被更...

2018-10-03 20:56:23 680

原创 React中的视图更新与虚拟DOM

React中的视图更新过程1. state 数据2. JSX 模板3. 用虚拟DOM的结构,生成真实的DOM ['div', {id: 'abc'}, ['span', {}, 'Hello']]4. 用虚拟DOM的结构,生成真实的DOM &lt;div id="abc"&gt;&lt;span&gt;Hello!&lt;/span&gt;&lt;/div&gt;5...

2018-10-03 19:31:02 1149

原创 diff算法中的概念

合并多次setStatesetState被设计为一个异步的方法,目的是为了提升React底层的性能。假设我们短时间内连续变更3次state,React就会把这3次setState合并为一次setState,只做一次VDOM的比对,提高了整体的性能。同级比较diff算法会从根节点开始,一层层的向下比较,如果在某一层的某个节点发现不同了,他就会直接替换这个节点下面的所有子树。k...

2018-10-03 19:28:01 4491

转载 为什么React事件处理函数必须使用Function.bind()绑定this?

转载自:http://www.cnblogs.com/DM428/p/7777539.html最近在React官网学习Handling Events这一章时,有一处不是很明白。代码如下:class Toggle extends React.Component { constructor(props) { super(props); this.state = {isTo...

2018-09-29 15:05:59 2143

原创 开发移动端WebAPP时需要注意的一些问题

1. CSS样式统一问题我们需要重置页面样式,因为在不同的手机浏览器上,默认的css样式不是统一的。解决方法:添加一个reset.css库, 链接地址:2. 一像素边框问题有的手机分辨率比较高,是2倍屏或3倍屏,手机上的浏览器就会把CSS中的1像素值展示为2个或3个物理宽度解决方法: 添加一个border.css库, 链接地址:3.  300毫秒点击延迟问题在移动端开发...

2018-09-27 21:13:19 659

转载 display: inline-block与float:left

转载自:http://blog.sina.com.cn/s/blog_5f39af320101qckt.html 什么时候使用inline-block,什么时候使用float什么时候使用,取决于你的设计稿跟解决方法。如果你需要文字环绕容器,那浮动是不二选择。如果你需要居中对齐元素,inline-block是个好选择。最终,这可以归结为float跟inline-block的两种属性作...

2018-09-25 16:05:16 525

原创 使用stylus选择元素列表的中后n个并为他们单独设定样式

在开发这种类似表格的页面时我遇到一个需求,那就是表格中每一个元素要有边框,但是最底下那一排元素不需要底部边框,但是表格每行个数不定,可能是3个可能是4个,我便用stylus写了一个函数。具体实现是这样的:对于每一个 li 即城市名,它有一个右边框,一个下边框。随意这会让最右边多一排右边框,但是用了border.css(解决1像素边框问题的css文件)后右边那个是看不出来的,我们就主要解...

2018-09-25 14:09:17 3981

原创 vue cli3.0中使用proxy进行代理转发

解决方法:在vue项目的根目录下添加 vue.config.js文件,文件中需要按照下面写法来写module.exports = { lintOnSave: true, devServer: { proxy: { // proxy all requests starting with /api to jsonplaceholder '/api':...

2018-09-24 20:10:36 24270

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除