4 ChrisYoung1314

尚未进行身份认证

暂无相关描述

等级
博文 59
排名 2w+

ES6 获取复杂嵌套对象中某个key对应的value

最近在做一个复杂的需求,根据复杂的数据结构,自动生成界面,然后其中有个小功能:获取复杂嵌套对象中某个key对应的value。虽然这个功能很常见,但是网上没看到什么特别好的方法,要么方法太老,要么就是代码冗长不够优雅。然而这个小功能会在多处都用到,所以就封装成了通用方法,在这里分享一下。(我这里使用的是typescript)//判断是否为对象constisObject=(obj:...

2019-03-25 11:30:21

多条件if...else...选择语句代码优化

偶尔间又看到了自己的博客,突然发现好久没有写博客了。看到自己的博客现在浏览量还算挺不错的,所以决定重新开始写一些博客,不过我已经转行前端两年了,所以不会像以前那样写C++和算法了,现在以写前端的内容为主。最近在写业务代码时,发现有一段业务的逻辑非常蛋疼,由于选择逻辑太多,所以需要靠多个if...else...来实现。大致的代码如下:functiongetQueryType(item){

2018-01-19 12:32:23

使用CSS替代JS实现几种常见的特效

本文来源于博客:不要点我为什么说能使用html/css解决的问题就不要使用JS呢?两个字,因为简单。简单就意味着更快的开发速度,更小的维护成本,同时往往具有更好的体验,下面介绍几个实例。1.导航高亮导航高亮是一种很常见的问题,包括当前页面的导航在菜单里面高亮和hover时高亮。你可以用js控制,但是用一点CSS技巧就可以达到这个目的,不需要使用JS。在正常态时,每

2016-09-25 19:34:19

TCP/IP协议族概述

TCP/IP协议的体系结构TCP/IP协议族四层模型和OSI七层模型             OSI七层模型

2015-10-29 21:17:15

vi编辑器的使用

vi编辑器简介1.vi编辑器  visualinterface的简称,是Linux上基本的文本编辑工具,可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制。2.vim编辑器   vi IMproved的简写,属于增强版的vi,在vi的基础上增加了很多功能,如代码的关键字加亮等,vim兼容所有的vi指令。3.一般常用的修改配

2015-10-29 19:45:38

Linux编程——多进程程序设计

本文学习Linux环境下的多进程编程,在我之前的文章里已经讲过进程与线程。本文,再简单讲一下进程的概念,方便接下来的学习。  进程定义:进程是一个具有一定独立功能的程序的一次运行活动。  进程状态图:

2015-09-01 15:18:13

HDFS架构——NameNode

在学习NameNode之前,我们先回顾一下HDFS的整个系统构架。     在上一篇文章中我们讲过了NameNode是管理节点,里面存放元数据,那么我们先来看看元数据的存储细节。元数据存储细节  HDFS为了保证数据的快速读写,并且要保证数据的安全,它就将元数据保存在内存一份,还保存在磁盘一份,来看看元数据在内存中是如何存储的。     我们举个例

2015-08-29 18:12:22

HDFS——HDFS整体设计架构和原理

在我们学习HDFS之前,首先要了解分布式文件系统的概念,分布式文件系统有很多,HDFS只是其中的一种而已。那么分布式文件系统是什么呢,又有哪些优点?  随着现在数据量越来越多,在一个操作系统管辖的范围存不下了,那么就需要分配到更多的操作系统管理的磁盘中,但是这样又不方便管理和维护,因此迫切需要一种系统来管理多台机器上的文件,这就产生了分布式文件管理系统。  分布式文件系统是一种允许

2015-08-29 08:39:14

Hadoop伪分布环境搭建——Hadoop安装与配置

我们需要从官网下载hadoop 点击打开链接 我自己下载的是最新的版本hadoop2.7.1。  下载完成后就开始安装了:  使用 sudotarxzfhadoop-2.7.1.tar.gz命令将文件解压缩。在/usr/local目录下创建一个hadoop文件夹,然后将文件拷贝到这里来。   sudomvhadoop-2.7.1/usr

2015-08-28 18:47:14

STL源码剖析——stack的实现原理和使用方法详解

Stack简介  stack是堆栈容器,是一种“先进后出”的容器。  stack是简单地装饰deque容器而成为另外一种容器。  使用stack时需要加上头文件#include。stack实现原理  以某种既有容器作为底部结构,将其接口改变,使之符合“先进后出”的特性,形成一个stack,是很容易做到的。deque是双向开口的数据结构

2015-08-27 16:48:52

Hadoop伪分布环境搭建——Linux环境配置

hadoop最近可以说是相当火,也勾起了我的兴趣,所以打算学习一下。想要学习hadoop肯定要先学会在自己的电脑上搭建一个hadoop伪分布环境。伪分布模式安装步骤的第一步就是要配置Linux环境。我自己的Linux是Ubuntu系统,不过只要是Linux系统,都大同小异,配置步骤基本没啥区别。  首先,需要进行本地网络配置。我们需要在linux系统下新增一个网络连接,自己设定好ip(ip

2015-08-26 19:16:42

STL源码剖析——deque的实现原理和使用方法详解

Deque简介  deque是“double—endedqueue”的缩写,和vector一样都是STL的容器,deque是双端数组,而vector是单端的。  deque在接口上和vector非常相似,在许多操作的地方可以直接替换。  deque可以随机存取元素(支持索引值直接存取,用[]操作符或at()方法,这个等下会详讲)。  deque头

2015-08-26 10:48:44

C++函数模板及实现原理

C++为我们提供了函数模板机制。所谓函数模板,实际上是建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代表。这个通用函数就称为函数模板。凡是函数体相同的函数都可以用这个模板来代替,不必定义多个函数,只需在模板中定义一次即可。在调用函数时系统会根据实参的类型来取代模板中的虚拟类型,从而实现了不同函数的功能。  为什么要有函数模板  下面,我们就通过一个例子来说

2015-08-25 12:50:14

C++ 学习路线推荐

相信有很大一部分学计算机的童鞋都是靠自学,即使本身是计算机专业的同学,也会觉得仅仅通过课堂上的学习是远远不够的,而且在上课时所用到的教材也不够好。然而自学的时候有个很大的问题就是找不到合适的方向和学习路线,我在刚开始的时候也吃过这样的亏,总是纠结于语言的学习,觉得编程就是学很多语言。然而单纯学习语言并不能解决问题,我们需要学习的是一个完整的体系,而编程语言只不过是其中一个解决问题的工具而已。后来我

2015-08-24 16:01:33

vfork 挂掉的一个问题

在知乎上,有个人问了这样的一个问题——为什么vfork的子进程里用return,整个程序会挂掉,而且exit()不会?并给出了如下的代码,下面的代码一运行就挂掉了,但如果把子进程的return改成exit(0)就没事。   我受邀后本来不想回答这个问题的,因为这个问题明显就是RTFM的事,后来,发现这个问题放在那里好长时间,而挂在下面的几个答案又跑偏得比较严重,我觉得可能有些朋友看到那样的答

2015-08-24 15:58:04

Linux编程——文件 IO操作

Linux文件I\O介绍   1.Linux系统调用   Linux系统调用(systemcall)是指操作系统提供给用户程序的一组“特殊接口”,用户程序可以通过这组“特殊”接口来获得操作系统提供的特殊服务。   为了更好的保护内核空间,将程序的运行空间分为内核空间和用户空间,他们运行在不同的级别上,在逻辑上是相互隔离的。在Linux中,用户程序不能直接访问内核提供的服务

2015-08-21 08:15:21

Vim编辑器——入门学习

vim模式介绍    以下介绍内容来自维基百科:从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆。几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数的编辑器使用了与Vim截然不同的方式:命令目录(鼠标或者键盘驱动),组合键(通常通过control键(CTRL)和alt键(ALT)组成)或者鼠标输入。Vim和vi一样,仅仅通过键盘来在这些模式之中切换。这就使得Vim可

2015-08-20 16:30:05

Linux编程——Makefile 使用

在先前的文章中,我们已经学习了gcc和gdb的使用。本节,我们将介绍Makefile的使用。Makefile带来的好处就是——“自动化编译”,一但写好,只需要一个make命令,整个工程便可以完全编译,极大的提高了软件的开发效率(特别是对于那些项目较大、文件较多的工程)。   make是一个命令工具,最主要也是最基本的功能就是根据makefile文件中描述的源程序至今的相互关系

2015-08-20 12:24:20

Linux编程——gdb调试

上一篇文章中,我们学习了gcc编译器的使用。本文,我们就讲解gdb调试器(Debug)的使用,它可以帮助我们找出程序之中的错误和漏洞等等。   当程序编译完成后,它可能无法正常运行;或许程序会彻底崩溃;或许只是不能正常地运行某些功能;或许它的输出会被挂起;或许不会提示要求正常的输入。无论在何种情况下,跟踪这些问题,特别是在大的工程中,将是开发中最困难的部分,我们将学习gdb(GNUde

2015-08-19 17:51:03

Linux编程——GCC的使用

工欲善其事,必先利其器。而gcc是Linux系统下最常见的编辑器,本文学习gcc编译器的使用。   gcc支持编译的一些源文件后缀名      gcc编译程序的流程      Linux的可执行文件并没有像Windows那样有明显的.exe后缀名,只需向其分配x(可执行)权限即可  sudochmod+xexcutefile   作为

2015-08-19 16:08:53
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!