levinhax
码龄8年
关注
提问 私信
  • 博客:126,185
    126,185
    总访问量
  • 59
    原创
  • 404,029
    排名
  • 16
    粉丝
  • 0
    铁粉

个人简介:小小前端一枚~ [简书:] https://www.jianshu.com/users/63adfe13324c/timeline [GitHub Page:] https://levinhax.github.io

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:河北省
  • 加入CSDN时间: 2016-07-29
博客简介:

levinhax的博客

查看详细资料
个人成就
  • 获得45次点赞
  • 内容获得8次评论
  • 获得63次收藏
创作历程
  • 45篇
    2017年
  • 14篇
    2016年
成就勋章
TA的专栏
  • Linux 菜鸟学习
    2篇
  • git学习
    2篇
  • HTML5学习
    2篇
  • JSP学习
    5篇
  • freeCodeCamp前端学习
    19篇
  • 随笔
  • 前端学习总结
    17篇
  • 前端实战
  • Node漫漫路
    2篇
  • React随笔
    1篇
  • 人生苦短, 我用Python
    1篇
  • 工具模块
  • 每天一个算法题
    4篇
创作活动更多

仓颉编程语言体验有奖征文

仓颉编程语言官网已上线,提供版本下载、在线运行、文档体验等功能。为鼓励更多开发者探索仓颉编程语言,现诚邀各位开发者通过官网在线体验/下载使用,参与仓颉体验有奖征文活动。

368人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Diff Two Arrays

题目描述:比较两个数组,然后返回一个新数组,该数组的元素为两个给定数组中所有独有的数组元素。换言之,返回两个数组的差异。题目分析 :两个数组的差异重新组成的数组,就是第一个数组在第二个数组中不同的项和第二个数组在第一个数组中不同的项的拼接。代码实现:function diff(arr1, arr2) { var newArr = []; newArr = arr1.filter(fu
原创
发布博客 2017.11.14 ·
321 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

Sum All Numbers in a Range

下面就到FCC的中级算法题了,希望自己可以一直坚持下去。题目描述:我们会传递给你一个包含两个数字的数组。返回这两个数字和它们之间所有数字的和。最小的数字并非总在最前面。题目分析:这道题实际上是求n个连续自然数的累加和,我想到了两种实现方式 :先得到两个最大数和最小数,实现数字在这个范围内的数组,再用reduce()方法求得所有数字的和。代码如下 :function sumAll(arr) {
原创
发布博客 2017.11.14 ·
346 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

凯撒密码

题目描述:凯撒密码Caesar cipher,又叫移位密码。移位密码也就是密码中的字母会按照指定的数量来做移位。一个常见的案例就是ROT13密码,字母会移位13个位置。由’A’ ↔ ‘N’, ‘B’ ↔ ‘O’,以此类推。写一个ROT13函数,实现输入加密字符串,输出解密字符串。所有的字母都是大写,不要转化任何非字母形式的字符(例如:空格,标点符号),遇到这些特殊字符,跳过它们。题目分析:由于所有的
原创
发布博客 2017.11.11 ·
1354 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

数组排序并找出元素索引

题目描述:先给数组排序,然后找到指定的值在数组的位置,最后返回位置对应的索引。举例:where([1,2,3,4], 1.5) 应该返回 1。因为1.5插入到数组[1,2,3,4]后变成[1,1.5,2,3,4],而1.5对应的索引值就是1。同理,where([20,3,5], 19) 应该返回 2。因为数组会先排序为 [3,5,20],19插入到数组[3,5,20]后变成[3,5,19,20],而
原创
发布博客 2017.11.11 ·
3537 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

摧毁数组

题目描述:实现一个摧毁(destroyer)函数,第一个参数是待摧毁的数组,其余的参数是待摧毁的值。destroyer([1, 2, 3, 1, 2, 3], 2, 3) 应该返回 [1, 1]; destroyer([1, 2, 3, 5, 1, 2, 3], 2, 3) 应该返回 [1, 5, 1];题目分析:我们可以先把待要摧毁的值组成一个新的数组,这样就可以比较第一个数组和新数组的元素,如
原创
发布博客 2017.11.11 ·
1058 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

过滤数组假值

题目描述:删除数组中的所有假值。在JavaScript中,假值有false、null、0、”“、undefined 和 NaN。还是先上代码:function bouncer(arr) { return arr.filter(Boolean);}bouncer([7, "ate", "", false, 9]);数组中有个filter()方法,它创建一个新数组, 包含通过所提供函数实现的测试
原创
发布博客 2017.11.10 ·
1603 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

比较字符串

题目描述:如果数组第一个字符串元素包含了第二个字符串元素的所有字符,函数返回true。举例,[“hello”, “Hello”]应该返回true,因为在忽略大小写的情况下,第二个字符串的所有字符都可以在第一个字符串找到。[“hello”, “hey”]应该返回false,因为字符串”hello”并不包含字符”y”。[“Alien”, “line”]应该返回true,因为”line”中所有字符都可以在
原创
发布博客 2017.11.10 ·
399 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

旋转数组的最小数字

题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。刚开始只想到了从头到尾遍历一番,从中找出最小数,这种思路的时间复杂度显然是O(n),显然是不现实的。那怎么办呢
原创
发布博客 2017.10.09 ·
193 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

用两个栈实现队列

题目描述: 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。分析: 一个队列包含了两个栈stack1和stack2,这道题要求我们操作这两个“先进后出”的栈实现一个“先进先出”的队列。假设我们先把一个元素a插入到栈stack1中,这个时候栈stack1里有一个元素a,栈stack2为空。再插入两个元素b和c到栈stack1中,此时stack1中有三个元素,其中
原创
发布博客 2017.10.08 ·
237 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

重建二叉树

题目描述:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。让我们先回顾一下二叉树遍历的知识点: 前序遍历:根→左→右,根在前,子树在根后且左子树比右子树靠前 中序遍历:左→根→右,根在中,左子树在跟左边,右子树
原创
发布博客 2017.10.07 ·
191 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

修改this指向

this一般指向的是当前被调用者,我们在定义函数的时候并不能事先确定this指向谁,但我们可以通过其他方式来改变它的指向。apply()该方法调用一个函数, 其具有一个指定的this值,以及作为一个数组(或类似数组的对象)提供的参数。 语法:fun.apply(thisArg, [argsArray]) - thisArg: 在 fun 函数运行时指定的 this 值。 - argsArray
原创
发布博客 2017.10.06 ·
527 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

二维数组中的查找

题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。两种思路: 1. 利用二维数组由上到下,由左到右的规律,首先选取数组中右上角的数字(a[row][col]),如果该数字等于要查找的数字(target),查找过程结束;如果该数字大于要查找的数字,剔除这个数字所在的列,即co
原创
发布博客 2017.10.06 ·
237 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

清除浮动方法总结

浮动会使当前标签产生向上浮的效果,同时会影响到前后标签、父级标签的位置及 width height 属性,在网页设计中清除浮动是一种很常见的操作,以下整理了几种清除浮动的方法给父元素设定高度给下一个添加clear属性增加一道墙(空标签)使用after伪元素使用overflow:hidden属性具体方法HTML 默认统一代码:
原创
发布博客 2017.10.04 ·
250 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

meta标签整理

所有的浏览器都支持<meta>标签,它提供有关页面的元信息,比如作者、日期和时间、网页描述、关键词、页面刷新等,该标签位于文档的头部,不包含任何内容,它的属性定义了与文档相关联的名称/值对。meta标签的内容设计对于搜索引擎优化来说非常重要,合理利用meta标签的Keywords和Description属性,可以使网站更加贴近用户体验。必须属性content 属性提供了名称/值对中的值。该值可以是任
原创
发布博客 2017.10.03 ·
240 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

node mysql搭建个人网站总结

十一假期没事,就花费了两天时间搭建了一个不成熟的个人网站,自己写点心得吧,安抚下自己躁动的心搭建环境Node.js Express MySQL网站介绍先上几张图网站主要包含三个模块:日志,项目简介和个人相册。Express是一个基于 Node.js 平台,快速、开放、极简的 web 开发框架。在网站设计的时候,前台页面使用基本的HTML5、CSS3和原生的JavaScript,实现了响应式页面的
原创
发布博客 2017.10.03 ·
1089 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

node 打开中文乱码

Node.js对中文支持不太好,有时侯打开文件会出现乱码。要想正常显示中文,需要注意以下两点:保证.js文件保存为unicode格式,编码格式为“UTF-8”在你的JS文件中的http.ServerResponse对象中的writeHead方法中加入 “charset=utf-8” 语句,定义文件中所使用的字符编码下面是一个简单的示例:var http = require('http');ht
原创
发布博客 2017.08.14 ·
529 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Console 调试小技巧

前言 :通常,我们在编写一个新的JavaScript代码过程中经常会发生错误,可能是语法错误,可能是逻辑错误,如果没有一个调试工具帮助我们的话,相信你怕是头都要炸了。由于JS是执行在浏览器的,所以我们可以直接在浏览器中进行调试。在所有的浏览器中,建议大家使用谷歌浏览器进行调试,体验非常的棒。当然所有的都一样,需要我们打开控制台输出窗口,即 Console面板。Console 调试我主要总结了一些在
原创
发布博客 2017.08.07 ·
6335 阅读 ·
2 点赞 ·
0 评论 ·
7 收藏

初识 Python

简介Python是一种解释型、面向对象、动态数据类型的高级程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。Python的优点是简单、易学、速度快、免费开源、解释性、面向对象、具有可扩展性和丰富的库,代码规范,当然也像任何语言一样存在缺点,单行命令和命令行输出问题,以及相比之下运行速度显得慢。Python 优雅的语法和动态类型,再结合它的解释性
原创
发布博客 2017.08.06 ·
351 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

数组常用方法二

今天接着补充一下数组的常用方法,关于数组的操作,还是要多多使用,就能熟练掌握。some() :some() 方法测试数组中的某些元素是否通过由提供的函数实现的测试 ,根据 some 来理解,只要有一项满足就返回 true。它的具体语法如下:arr.some(callback[, thisArg])callback 是用来测试每个元素的函数,它在被调用时会传入三个参数: 1. currentVal
原创
发布博客 2017.08.05 ·
280 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

初识node

Node.js是以Google V8 JavaScript引擎为基础的服务器端技术,简单的说就是运行在服务端的JavaScript。它使用了一个事件驱动、非阻塞式 I/O 的模型,轻量又高效。当然,学习node就要先安装node.js,网上的教程有很多。我们要确保本机上node和npm能正常运行。第一个node程序// load http modulevar http = require('htt
原创
发布博客 2017.08.04 ·
240 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多