自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

技术无止境,人生仍探索。

热爱分享各种技术,探索生命奥妙,开拓精彩人生

  • 博客(162)
  • 收藏
  • 关注

原创 编程学习之道

相信你一定为自己列过很多计划,无论是深入研究某个技术框架的源码,还是长期维护一个开源项目,半途而废的一定非常多,开始坚持了一段时间,一天、几天、几周,甚至几个月,然后因为某件事件耽搁了一天,然后就耽搁了一周、一个月,其实你心里有数知道自己隔了蛮久了,但是到你再认真想起来的时候,打眼一看,已经隔了几个月了,心里的那种对自己的愧疚感会油然而生😔。看函数里的逻辑是怎么样的,如果有调用了别的函数,先不着急去看这个函数的具体实现,而要先知道这个函数做什么的,弄清楚当前函数的逻辑。在入手阶段应该轻理论,重实践。

2023-07-20 11:25:55 367 1

原创 [javascript核心-10] 解析params参数的多种方案

前端实现参数解析的多种方式。大前端知识体系与面试宝典,从前端到后端,全栈工程师,成为六边形战士。

2023-07-19 17:09:58 1715

原创 [javascript核心-09] 彻底解决js中的类型检测方案

全部类型值进行细分检测。大前端知识体系与面试宝典,从前端到后端,全栈工程师,成为六边形战士。

2023-07-19 17:07:52 1147

原创 [javascript核心-08] V8 内存管理机制及性能优化

栈用于存放JS 中的基本类型和引用类型指针栈空间是连续的,增加删除只需要移动指针,操作速度很快栈空间是有限的,若超出栈空间内存,会抛出栈空间溢出错误栈是在执行函数时创建的,函数执行完毕后,栈销毁。

2023-07-19 17:05:04 1307

原创 [javascript核心-07] 带你彻底弄懂事件循环机制、宏任务、微任务

带你彻底弄懂事件循环机制、宏任务、微任务,大前端知识体系与面试宝典,从前端到后端,全栈工程师,成为六边形战士

2023-06-06 10:14:45 686 1

原创 [javascript核心-05] 全面梳理 ES6+,从 ES6~ES12(一定有你不知道的一款)

全面梳理 ES6+,从 ES6~ES12(一定有你不知道的一款),大前端知识体系与面试宝典,从前端到后端,全栈工程师,成为六边形战士

2023-06-06 10:10:18 510

原创 [javascript核心-06] 带你彻底弄懂 js 中的变量提升和作用域链

带你彻底弄懂 js 中的变量提升和作用域链,大前端知识体系与面试宝典,从前端到后端,全栈工程师,成为六边形战士

2023-06-06 10:10:05 345

原创 [javascript核心-04]彻底弄懂Promise异步编程

彻底弄懂Promise异步编程,大前端知识体系与面试宝典,从前端到后端,全栈工程师,成为六边形战士

2023-06-06 10:08:23 657

原创 [javascript核心-03]彻底弄清this的指向问题

彻底弄清this的指向问题,大前端知识体系与面试宝典,从前端到后端,全栈工程师,成为六边形战士

2023-06-06 10:06:37 289

原创 [javascript核心-02]彻底弄清Vue3响应式原理及手写实现

彻底弄清Vue3响应式原理及手写实现,大前端知识体系与面试宝典,从前端到后端,全栈工程师,六边形战士

2023-06-06 10:05:14 301

原创 [javascript核心-01]彻底梳理清楚Proxy 代理与Reflect反射

彻底梳理清楚Proxy 代理与Reflect反射,大前端知识体系与面试宝典,从前端到后端,全栈工程师,六边形战士

2023-06-06 10:03:24 380

原创 javascript面向对象完全指北

js中的面向对象其实是基于原型的,构造函数其实充当了“类”的角色,因为构造函数可以创建实例。而构造函数其实与普通函数没有区别,只是一个普通函数用new进行调用的时候我们称它为构造函数。如果在构造函数中显示return,若返回值是一个对象,则该对象会代替新创建的对象实例返回,但如果返回值是一个原始类型,则会被忽略。应该始终确保使用new调用构造函数,否则构造函数中的指向的是全局对象。此时就是在改变全局对象,而不是创建一个新的对象。构造函数模式的问题:没有消除代码冗余,方法不共享查看/判断对象的原型对象

2022-12-03 15:14:13 349 1

原创 写给前端程序员的C语言

这篇文章的顺序不会按教科书的形式来讲,而是站在前端程序员与JavaScript语言和C语言对比的角度来讲。先从数组说起。我们知道数组在内存里是连续的空间,但是我们如何知道它是连续的呢?例如下面这个例子:我们如何知道在内存中 和 的地址是相连的呢?我们可以C语言来看:注: 是C语言里面取地址的操作符。我们看到地址是以十六进制的形式打印出来的,数组 里的第0个元素和第一个元素之间相差了 个字节,那么是不是

2022-12-03 15:06:21 3724

原创 2021年的最后一天,我发布了2022年的第一个视频

大家好,我是轩灵,今天是2021年的最后一天,而在今天我发布了2022年的第一个视频,介绍2022年我的轩灵大前端知识体系打造计划,同时送上我对所有程序员同学的祝福。打算今年用一年的时间,打造大前端的知识体系,完成12个主题:算法、javascript、typescript、网络协议、设计模式、css、操作系统、react、node.js、架构设计、浏览器原理、性能优化、代码精进与软技能,产出将会以文章 + 思维导图 + 视频 + 示例 + 代码的方式方式分享出来。如果你感兴趣,可以扫码加我的微信或者进群

2021-12-31 14:37:03 566

原创 2022年轩灵大前端知识体系王牌打造计划

我将知识体系划分为12个专题,对应1年的12个月,1个月完成一个专题,每个专题我都列出了参考资料,主要包含技术书籍、极客时间的专栏及视频课程。2022期望与你一起在技术领域崛起。

2021-12-28 14:15:01 1579

原创 《左耳听风-高效学习篇》阅读笔记

学习态度学习不是努力读更多的书,盲目追求阅读的速度和数量,这会让人产生低层次的勤奋和成长的感觉,这只是在使蛮力。要思辨,要践行,要总结和归纳,否则,你只是在机械地重复某件事,而不会有质的成长的学习不是努力读更多的书,盲目追求阅读的速度和数量,这会让人产生低层次的勤奋和成长的感觉,这只是在使蛮力。要思辨,要践行,要总结和归纳,否则,你只是在机械地重复某件事,而不会有质的成长的他们在想方设法地用一些手段推出各种代读、领读和听读类产品,让人们可以在短时间内体会到轻松获取知识的快感,并产生勤奋好学和成

2021-11-13 16:41:36 443

原创 python函数式编程

python列表推导式列表推导式的语法格式:[f(x) for x in L],其中 f(x) 表示一个函数,作用于列表 L 的每一个元素。所以整体来看,就是将函数f映射到列表 L 中的每个元素上。其返回值是一个新的列表例如,将列表中每个元素加1[x+1 for x in [10,20,30]] # [11, 21, 31]L 也可以是一个字符串[x for x in 'string'] # ['s', 't', 'r', 'i', 'n', 'g']当然也可以加if 的判断条件,用于对元素

2021-11-13 16:36:53 2483

原创 JavascriptBestCode 给你最好的javascript代码

JavascriptBestCode 给你最好的javascript代码Javascript最佳实践1.通过条件判断给变量赋布尔值// badif (a === 'a') { b = true;} else { b = false;}// goodb = a === 'a';// bestb = (a === 'a');2.使用三元表达式代替if判断// badif (a === 'a') { b = a;} else { b = c;}// goodb =

2021-11-05 11:01:40 738

原创 在GeoDa中实现自定义相邻矩阵的Moran‘s I计算

在GeoDa中实现自定义相邻矩阵的Moran’s I计算

2021-05-14 10:44:51 1166 2

原创 nginx + node.js负载均衡以及nginx可视化管理

启动node节点01.jsconst express = require('express');const app = express();app.get('/', (req, res) => res.send('<h1>The server at 01<h1>'));// 监听端口app.listen(8001, () => console.log('success: 01.js'));02.jsconst express = require('e

2021-04-28 17:44:59 695

原创 Python中的列表、元组和字典

Python中的列表、元组和字典列表List创建访问通过索引进行访问list = [1,2,3,4]a=list[0] # 1b=list[-1] # 4切片[start : end :step] 以step为间隔截取start到end(不包含)之间的所有元素;支持负数索引;list[num:]表示从指定num开始到最后;list[:num]表示从开头到指定的num为止相加(合并)列表只能和列表相加乘法可列表包含的元素重复N次可用于填充列表

2021-04-27 16:40:55 459 1

原创 python中的堆

python中的堆以及堆操作# heapqt提供了对应堆的支持,构建的是小顶堆from heapq import *my_data = [7,6,3,2,9,0,1,5,4]# 对my_data应用堆属性,即堆化heapify(my_data)print(my_data) # [0, 2, 1, 4, 9, 3, 7, 5, 6]# 添加一个元素,堆自动调整,继续满足小顶堆heappush(my_data,0.5)print(my_data) # [0, 0.5, 1, 4, 2,

2021-04-27 14:35:02 3687

原创 面试的问题类型总结

项目上问题知识型问题开放型问题案例问题趣味性问题

2021-04-26 16:30:56 151

原创 论据和论证过程比论点更重要

论据和论证过程比论点更重要通过追溯法去学习和探索一个知识,为自己增加论据

2021-04-26 16:21:48 702

原创 计数排序和桶排序——python和javascript实现

计数排序python版不稳定计数排序# 不稳定计数排序def count_sort(arr): max,min = findMaxAndMin(arr) space = max - min countArr = [0] * (space+1) resultArr = [] # 计数 for num in arr: for j in range(0,space+1): if num == j: countArr[j]+=1 # 排序 for i in ran

2021-04-26 14:23:30 208 1

原创 计数排序的python实现和javascript实现

python实现def count_sort(arr): max,min = findMaxAndMin(arr) space = max - min countArr = [0] * (space+1) resultArr = [0] * (space+1) for num in arr: for j in range(0,space+1): if num == j: countArr[j]+=1 for i in range(0,len(countArr)): i

2021-04-25 17:31:08 177 2

原创 快速排序的双指针递归与非递归、单指针递归与非递归实现

双向递归def quick(start_index,end_index,arr): # 递归 if start_index >= end_index: return base = getBase(start_index,end_index,arr) quick(start_index,base-1,arr) quick(base+1,end_index,arr)def getBase(start_index,end_index,arr):

2021-04-25 09:38:52 220

原创 Thress.js设置背景色及背景透明

Thress.js默认背景Thress.js默认背景色为黑色设置Thress.js背景颜色场景想要自行定义Thress.js模型的背景颜色实现this.renderer = new THREE.WebGLRenderer();this.renderer.setClearColor(0xffffff, 0); //设置背景颜色设置Thress.js背景透明场景有时候将Thress.js渲染的3D模型嵌入在页面中,需要给页面整体设置一个背景色时,需要将Thress.js背景设为透明实现

2021-04-22 18:12:50 2937

原创 Echarts图例常用配置(图例大小、字体、显示方式、位置等)

Echarts图例常用配置legend: { data: this.allLegend, textStyle: { //图例字体大小 fontSize: 10, }, //图例大小 itemHeight: 10, //图例滚动显示 type: 'scroll', //图例纵向显示 orient: 'vertical', //图例位置 right: 0, top: 30, bott

2021-04-22 18:04:53 28630 1

原创 快速排序的python、java、javascript实现

概述快速排序与冒泡排序的相似处是都采取了临近比较、交换两值的方式,快速排序的特点在于运用了分治法,每次都将数组分成两个部分,与一个基准元素进行比较,比标志位大的放在标志位的右边,比标志位小的放在标志位的左边。基准元素的选择可以是简单的使用列表的第一个元素,也可以任意进行选择。快速排序的python实现def quickFixedFinal(startIndex, endIndex, arr=[]): if startIndex >= endIndex: return

2021-04-21 17:50:25 179

原创 使用java,javasript,python实现冒泡排序的三个版本

概要冒泡排序是最简单的一种排序方式,最基础的实现用嵌套的两层for循环即可实现。但是即便是最简单的冒泡排序也存在着很大的优化空间,我们可以对两层循环分别进行优化。首先来看一下两层for循环的作用:外层for循环是对比较趟数的控制内层for循环时对每一趟比较次数的控制存在的优化空间是:对于外层循环,如果数组已经有序,就不需要再进行外层循环了,需要一个标记来进行跟踪数组是否已经有序。而有序的标志是某一趟不再进行数据交换了。对于内层循环,由于冒泡排序每一次是把最大的放到最后,所以后面的元素是有序的,

2021-04-21 16:52:03 209

翻译 (翻译)现代JavasScript:ES6+

ECMAScript 2015,也就是我们所知道的ES6,介绍了许多JavaScript的新特性。从那以后,每年都会增加一些新的特性。ES6及以后的扩展通常被称为现代JavaScript,因为有着这些重要的变化。这篇文章主要探索的是ES6, ES7, ES8, ES9以及ES10的新特性。什么是ECMAScriptECMAScript是一门脚本语言的标准。JavaScript是一门实现了ECMAScript标准的编程语言。ECMA国际是制定ES标准的协会。TC39是ECMA国际下的一个委员会,它决定Ja

2020-12-13 19:41:16 456

翻译 (翻译)九个项目助你成为前端高手

简介无论你是一个编程的新手还是你已经是一个有经验的开发者,在这个行业中,学习新的概念和语言/框架都是必须的,这样才能跟上快速的变化。举个例子来说,Facebook出的开源框架React只用了4年时间就成为了全球Javascript开发者的第一选择。当然,Vue和Angular也有可观的追随者数量。类似的还有Svelte,还有通用框架Next.js和Nuxt.js,以及Gatsby,Gastsby,Quasar,还有更多其他的。如果你想成为一个专业的Javascript开发者,你至少应该在不同框架和库方面有

2020-12-13 16:07:44 491

翻译 (翻译)使用javascript中的proxy(代理)

(翻译)使用javascript中的proxy(代理)我最近一直在研究javascript中的proxy,我对它的能力感到惊讶。Proxy允许你改变语言的基本结构(像object,arrays,functions…)下面是使用javascript代理的几个例子。对象冻结我们可以使用几行简单的代码来阻止对对象的改变操作,这本质上是冻结对象 const hero = { name: 'Saitama', age: 25, class: 'B', race: 'Human',

2020-12-12 09:31:41 361

翻译 (翻译)Weakmap详解

先看一个例子let obj = { name: 'toto' }// { name: 'toto' }这个对象能够被读取到,因为obj这个变量名有对它的引用// 将引用覆盖掉obj = null// 这个对象将会被从内存中移除,因为我们已经失去了对它所有的引用再来看另外一个例子let obj = { name: 'toto' }let arr = [ obj ]obj = null在这个例子中,对象{name:'toto'}不会被从内存中移除,因为数组arr保存了对它的引用

2020-12-11 16:58:31 9159 11

原创 子元素相对父元素垂直水平居中的八种方式

基本样式HTML<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" />

2020-07-27 09:15:43 603

原创 实现左侧固定宽度, 右侧自适应的两栏布局的八种方案

HTML<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> &lt

2020-07-23 18:56:18 4940 2

原创 animation动画全解

animation八大属性共用代码HTML<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=

2020-07-23 16:54:58 7725

原创 Vue项目中集成Echarts

Vue项目中集成Echarts这里主要使用两个封装Echarts的库:v-charts和Vue-Echartsv-chartsgithub地址v-charts官网使用安装npm i v-charts echarts -S结合Element一起使用<template> <div id="charts"> <el-tabs v-model="activeName" @tab-click="handleClick"> &

2020-07-23 10:31:54 4099

原创 使用react-redux实现todoList

使用react-redux实现todoList一、Redux作用统一状态管理,将分散在各个组件中的状态全部放在统一的store对象中进行管理,适用于状态特别分散、状态共用较多、状态传递较深的情形。二、安装1.创建项目yarn init create-react-app todolist2.安装reduxyarn add redux redux-chunk3.目录结构规划src | -| commponents -| storeApp.jsindex.cssin

2020-07-07 11:14:02 1441 2

空空如也

空空如也

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

TA关注的人

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