Southrock's Blog

Nothing but a rock

前端知识梳理(三)websocket

前言由于后端大作业的要求,做一个前端聊天室,项目需求要用到websocket,想想自己听了这么久的websocket,却很少实际的使用到它,这次乘着这次机会,复习一波websocket的知识。 为什么每次接触到个东西,在学习如何使用之前先问自己一个问题,为什么用它?就像之前工作室举行的hackweek比赛,许多大一的新生在自己的产品里用到了前端框架,看到他们在没有对JavaScript开发做......

前端知识梳理(二)Event Loop

前言之前一直都知道,JavaScript是一门单线程的语言,知道在写js时要注意不要堵塞了页面渲染或是导致了页面假死,那么JavaScript内部到底是如何实现任务分发和执行并行操作的呢,今天来好好梳理一下。 为什么JavaScript是单线程 JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊。......

前端知识梳理(一)模块管理

前言对于流行的语言,类似于python、java、c等等,在初期学习,我们一般就能接触到他们的模块管理模式,大概了解其运行的机制。而JavaScript,由于天生的缺陷,随着学习的深入,许久后才能了解到一些列诸如UMD、CommonJS和ES6 Module等看起来相似却又迥异的多种模块管理模式。 模块管理JavaScript在现如今前端开发越来越复杂的,原先的设计模式中,模块管理的缺乏,带......

前端知识梳理(零)前言

前言前言的前言,也真是有够怪的,我真是个喜欢写前言的人,感觉做什么事情,都得有个因,才能做下去,才做的有所意义,才做的有意思。 希望自己的人生也是,有意义,有意思。 为什么要写这个自己已经大三了,学习前端也已经两年半了,写了很多项目,也看了很多文档、博客。突然觉得自己对自己知道什么都没有个清晰的认识,需要理理,让自己视角更远一些,认清自己,也希望能认清前端发展的方向。理清自己的路线,了解自己......

Hook的简单学习与实践

前言这几天在忙着家园招新项目的工作,打算深入一下对React的理解,一直听说React Conf 2018提出的proposal——hook非常好用。就打算乘着这次项目来深入理解一下hook。首先回顾下React Conf 2018在介绍hook所讲的内容。 React之前实践中存在的问题包装地狱(Wrapper Hell)当我们在项目中复用一些逻辑时,会把一些功能提取出来,成为组件。主要是......

北京地铁计价

起因因为某人的离散期末作业,开始的这个项目,自己也想学习一些算法知识,也拿来实践实践,运用出来。废话不多说,开始。 核心算法迪杰斯特拉算法(英语:Dijkstra’s algorithm)由荷兰计算机科学家艾兹赫尔·戴克斯特拉在1956年提出。戴克斯特拉算法使用了广度优先搜索解决赋权有向图的单源最短路径问题。 算法描述迪杰斯特拉算法采用的是一种贪心策略。这个算法是通过为每个顶点 v 保留目......

talk about this

解析JavaScript中的thisthis关键字作为JavaScript中最为复杂的机制之一,被定义在所有函数的作用域中。发现很多人经常用它,却大部分都并没有完全弄懂他。 实际上JavaScript的this机制并没有那么先进,但在缺乏清晰认识的情况下,this对你来说完全就是一种魔法。 前言在刚开始学习前端时,只是刚刚对HTML和JS有一点大概的了解后,由于家园的黑客马拉松中同组产品的需......

hello, world

Hello, world这里是南岩居xD请多指教 前世本博客是由Hexo博客框架搭建的,用框架只是为了省事,让自己更专注于内容本身。 之前用Jekyll并用Hux大神的主题简单的玩了玩,后面觉得ruby还是不在自己的技术栈里,自己并不熟悉它。遂改用了基于node.js的Hexo 新的开始自己的博客终于终于终于(重要的事情说三遍)正式成立了,到了大二才正式搭好,就为了这个域名备案一直拖到现在。......