节省gas有哪些方案?

节省gas有哪些方案?使用短路模式排序Solidity操作短路(short-circuiting)是一种使用或/与逻辑来排序不同成本操作的solidity合约 开发模式,它将低gas成本的操作放在前面,高gas成本的操作放在后面,这样如果前面的低成本操作可行,就可以跳过(短路)后面的高成本以太坊虚拟机操作了。删减不必要的Solidity库在开发Solidity智能合约时,我们引入的库通常只需要用到

- 阅读全文 -

transfer、send、call的区别

相同点都可以在合约之间相互转账,send和call都有返回值。需要在代码中判断返回值。addr.transfer(1 ether)、addr.send(1 ether)、addr.call.value(1 ether)的接收方都是addr。如果使用addr.transfer(1 ether)、addr.send(1 ether),addr合约中必须增加fallback回退函数!如果使用addr.c

- 阅读全文 -

分享几道有趣的算法题

LeetCode 54. 螺旋矩阵给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1输入: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] 输出: [1,2,3,6,9,8,7,4,5]示例2输入: [ [1, 2, 3, 4], [5, 6, 7, 8], [9,10,11,12]

- 阅读全文 -

JavaScript数据结构之链表

function defaultEquals (a, b) { return a===b } class Node{ constructor(element) { this.element = element this.next=undefined } } class LinkedList { constructor(equalsFn =defaultEquals

- 阅读全文 -

JavaScript数据结构之双端队列

class Deque { constructor() { this.list = {} this.count = 0 this.lowestrCount = 0 } //在双端队列前端添加 addFront(el){ if(this.isEmpty()){ this.addBack(el) } else if (this.low

- 阅读全文 -

JavaScript数据结构之队列

class Queue{ constructor() { this.count = 0 this.list = {} this.lowestCount=0 } //往队列添加元素 enqueue (element) { this.list[this.count] = element this.count++ } //检测队列是

- 阅读全文 -

JavaScript不用数组实现栈的方式

class Stack { constructor() { this.item={} this.count=0 } //栈顶添加 push(item){ this.item[this.count]=item this.count++ } //删除 pop(){ if(this.isEmpty()){ retur

- 阅读全文 -

React搭建环境指南

### 安装脚手架 ``` npm install create-react-app ``` ### 利用脚手架搭建项目 ``` npx creact-react-app ``` ### 暴露配置项 ``` npm run eject ``` ### 如果需要安装less- 打开webpack.config.js找到下面代码所在位置``` style files regexes ```- 将以下代

- 阅读全文 -

Node之中间件

中间件概述Express框架中一个非常重要的概念——中间件。在Express框架中,允许通过中间件的使用来调用各种第三方类库,这让我们的开发工作变得更为方便,也使得我们可以开发出各种更为强大的应用程序。一个中间件是一个用于处理客户端请求的函数。一个HTTP服务器中可能会使用到各种中间件。当接收到一个客户端请求时,首先将该请求提交给第一个中间件函数,每一个中间件函数内部封装一个next回调函数,在一

- 阅读全文 -

如何部署Node项目到线上服务器?

首先我们得现有一台服务器这里以CentOS 7.6服务器为例,以node+MongoDB讲解首先介绍一下设置镜像源为淘宝镜像首先执行以下命令回到根目录root下cd ~ 1.备份mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup2.下载新的 CentOS-Base.repo 到 /etc/yum

- 阅读全文 -