前言 在上一章介绍了关于区块链的一些基础知识,这一章会分析指令 geth --datadir dev/data/02 init private-geth/genesis.json 的源码,若你的ethereum的debug环境还没有搭建,那么需要先搭建ethereum的dabug环境. 准备工作 创建文件 genesis.json ,内容如下: { "config": { "chainId": 666, //可用于网络标识,在eip155里有用到,目前来看是做重放保…
前言 在上一章我们介绍了  ethereum初始化指令 ,包括了系统是如何调用指令和指令的执行.在本章节我们将会介绍 geth --datadir dev/data/ --networkid console 指令. 指令分析 指令: geth --datadir dev/data/ --networkid console 介绍:上面的指令主要的工作为: 运行eth程序 开启控制台 分析: --datadir :指定eth的数据存储地址为 dev/data/ --networkid :指定eth的…
前言 上一章我们介绍了如何搭建ethereum的debug环境.为了更深入的了解ethereum,我们需要了解一些ethereum的相关的知识,本章我们将介绍这些知识. ethereum相关知识 在学习ethereum的过程中,我们可能会遇到下面的一些知识: hash merkle tree merkle patricia tree rlp Hash(散列函数) Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长…
组件是可复用的Vue实例,一个组件本质上是一个拥有预定义选项的一个Vue实例,组件和组件之间通过一些属性进行联系. 组件有两种注册方式,分别是全局注册和局部注册,前者通过Vue.component()注册,后者是在创建Vue实例的时候在components属性里指定,例如: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title&…
我们在开发组件时有时需要和父组件沟通,此时可以用自定义事件来实现 组件的事件分为自定义事件和原生事件,前者用于子组件给父组件发送消息的,后者用于在组件的根元素上直接监听一个原生事件,区别就是绑定原生事件需要加一个.native修饰符. 子组件里通过过this.$emit()将自定义事件以及需要发出的数据通过以下代码发送出去,第一个参数是自定义事件的名称,后面的参数是依次想要发送出去的数据,例如: <!DOCTYPE html> <html lang="en">…
前言 因为最近云小哥哥换了一份工作,新公司比较忙,所以一直没有更新新的博客.云小哥哥新的公司是做区块链的,最近在学习区块链相关的东西(也算是乘坐上了区块链这艘大船).本博客是记录我搭建ethereum的debug环境的步骤. 系统环境及工具 操作系统:mac 10.13.4 ide:go-land 版本控制:git go-lang:go version go1.10.3 darwin/amd64 通过 brew 就可以安装上述提到的所有工具,其他操作系统请自行安装上述工具. 搭建ethereum…
这篇主要说一下在源码中jquery对象是怎样设计实现的,下面是相关代码的简化版本: (function( window, undefined ) { // code 定义变量 jQuery = function( selector, context ) { return new jQuery.fn.init( selector, context, rootjQuery ); }, // code 定义变量 jQuery.fn = jQuery.prototype = { jquery: core…
简介 AQS 全称是 AbstractQueuedSynchronizer,位于java.util.concurrent.locks 包下面,AQS 提供了一个基于FIFO的队列和维护了一个状态state变量赖表示状态,可以作为构建锁或者其他相关同步装置的基础框架.AQS 支持两种模式:共享模式 和 排他模式,当它被定义为一个排他模式时,其他线程对其的获取就被阻止,而共享模式对于多个线程获取都可以成功.之所以说它是一个同步基础框架是因为很多同步类里面都用到了AQS,比如 ReentrantLoc…
jquery源码中涉及了大量原生js中的知识和概念,文章是我在学习两者的过程中进行的整理和总结,有不对的地方欢迎大家指正. 本文使用的jq版本为2.0.3,附上压缩和未压缩版本地址: http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.0.3.js http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.0.3.min.js 查看源码可以发现整体结构是这样: (function( window, undefined…
接上一篇,jquery源码的这种写法叫做匿名函数自执行 (function( window, undefined ) { // code })( window ); 函数定义了两个参数window和undefined,执行函数传入了window对象. 参数window 因为变量对象的作用域链的关系,我们知道即使不传入window对象,函数内部也是可以访问到它的,那么,这里传入window对象的意义主要有两点: 1.提高性能 按照变量对象的作用域链顺序,函数会先在内部查找window变量,而函数内…