自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Shell脚本快速入门(2)

今天我们来学习Shell的运算符和流程控制。运算符Shell和其他编程语言一样支持多种运算符,包括:算术运算符关系运算符逻辑运算符字符串运算符文件测试运算符下面我们一起来看看。算术运算符原生bash不支持简单的数学运算,需要借助expr命令。例如,输出两个数的和:sum=`expr 1 1`echo $sum注意:操作数和操作符之间必须用空格...

2020-02-11 18:43:58 885

原创 Shell脚本快速入门(1)

Shell 是一个用 C 语言编写的程序,用户可以通过Shell脚本语言来进行程序开发。与其他脚本语言不同,Shell脚本所需的解释器一般是内置在操作系统的,而像Node.js、PHP等脚本语言需要手动安装解释器程序才可以。接下来将和大家一起来学习Shell脚本编程。Shell解释器Shell解释器种类众多,笔者的电脑上内置以下Shell:/bin/bash/bin/csh/bin/k...

2020-02-10 17:34:28 907

原创 Java中加载文件的几种方式

在Java程序中加载外部文件有多中方式,每种方式也存在区别,本文将理清这些加载方式之间的区别。文件IO方式package org.xialei.example.resource;import java.io.File;import java.io.IOException;public class Main { public static void main(String[]...

2020-02-01 16:06:33 1052

原创 kafka二进制协议分析与PHP客户端开发

最近分享了《应用层私有协议的设计和实战》,对应用层私有协议设计做了一些介绍,同时也对协议设计中常用的数据类型做了比较形象的讲解,今天我们来研究一下kafka的二进制协议。数据类型kafka二进制协议定义了许多的数据类型,包含常用的数字、字符串,也包含了数组等类型。本文主要讨论不可变长数据类型,可变长度(如Google Protocol Buffers)不在讨论范围内。数据类型字节长度...

2020-01-17 18:05:39 1446

原创 Javascript事件系统

本文内容事件基础事件监听方式事件默认行为事件冒泡与事件捕获事件绑定与事件委托事件基础注意:本文不会深入探究Javascript的事件循环。提到事件,相信每位Javascript开发者都不会陌生,由于Javascript是先有实现,后有规范,因此,对于大部分人来说,事件模块可以说是比较模糊的,本文将从不同角度帮助你理清楚事件模块。事件的本质可以说是一个回调函数,当...

2019-12-31 10:57:19 951 1

原创 MySQL中的CHAR和VARCHAR到底支持多长?

最近在研究MySQL的数据类型,我们知道,选择合适的数据类型和数据长度对MySQL的性能影响是不可忽视的,小字段意味着可以MySQL可以读取更多的记录,从而加快查询速度。网上该问题的答案有很多版本,还是通过实践得出的结论比较靠谱。先说结论(MySQL版本5.7.27)CHAR最大255字符,字符集对CHAR没有影响,CHAR()括号内填写最大字符数255VARCHAR最大65535字节,...

2019-11-14 17:46:38 1063 1

原创 深入浅出ES6的迭代器

迭代器是ES2015中新增的规范,与之相关的for...of也是ES2015新增的。本文来深入研究一下迭代器是什么,以及迭代器能够干什么?或许你对for ... of的执行还不了解,比如什么情况下可以使用for ... of去遍历对象,什么情况下会报错等等,这篇文章应该能帮到你。迭代器协议for ... of只能迭代满足【迭代器协议】的对象可迭代对象的必须存在[Symbol.i...

2019-11-14 11:05:37 931 1

原创 深入浅出ES6的标准内置对象Proxy

Proxy是ES6规范定义的标准内置对象,可以对目标对象的读取、函数调用等操作进行拦截。一般来说,通过Proxy可以让目标对象“可控”,比如是否能调用对象的某个方法,能否往对象添加属性等等。const originalObj = { name: 'xialei'};const publicObj = new Proxy(originalObj, { set(target, p...

2019-11-04 17:22:23 963

原创 深入浅出ES6的标准内置对象Proxy

Proxy是ES6规范定义的标准内置对象,可以对目标对象的读取、函数调用等操作进行拦截。一般来说,通过Proxy可以让目标对象“可控”,比如是否能调用对象的某个方法,能否往对象添加属性等等。const originalObj = { name: 'xialei'};const publicObj = new Proxy(originalObj, { set(target, p...

2019-11-04 17:08:33 184

原创 ES6的Set类型

本文内容Set的基本使用常用用法Set 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用。基本使用new Set([iterator])iterator 与Map类似,Set接收一个可选的Iterator对象,所有元素将按照顺序不重复地添加到Set中。传递null或者undefined将返回一个空Setconst set = new Set();...

2019-11-01 10:21:53 306

原创 ES6的Map类型

本文内容Map的基本使用Map支持的数据类型Map的迭代Map与其他对象的转化在Map出现之前,要实现类似需求,只能使用Object,但是Object还是存在一些问题的。如果使用Object作为key存储在{}中,key最终是当做[object Object]来使用的Object的keys是无序的无法安全遍历Object无法直接获取Object大小Map 对象保...

2019-11-01 10:20:41 543

空空如也

空空如也

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

TA关注的人

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