node

如何安装typescript-如何运行typescript

社会主义新天地 提交于 2020-03-08 12:22:32
如何安装 typescript npm install typescript -g 安装 ts 之前需要安装 node 哈 查看 ts 的版本 tsc -V 我的是 3.6.3 的版本 typescript 文件的后缀名是 ts 哈 tsc 首先要用命令编译成 js 第一步是 tsc XXXX.ts 然后在用 node 去运行 tsc 编译后的 js。 然后是 node XXXX.js 来源: https://www.cnblogs.com/IwishIcould/p/12441644.html

JavaScript实现双向链表

99封情书 提交于 2020-03-08 10:55:30
JavaScript实现双向链表 一、双向链表简介 双向链表 :既可以 从头遍历到尾 ,又可以 从尾遍历到头 。也就是说链表连接的过程是 双向 的,它的实现原理是:一个节点既有 向前连接的引用 ,也有一个 向后连接的引用 。 双向链表的缺点: 每次在 插入或删除 某个节点时,都需要处理四个引用,而不是两个,实现起来会困难些; 相对于单向链表,所占 内存空间更大 一些; 但是,相对于双向链表的便利性而言,这些缺点微不足道。 双向链表的结构: 双向链表不仅有 head 指针指向第一个节点,而且有 tail 指针指向最后一个节点; 每一个节点由三部分组成: item 储存数据、 prev 指向前一个节点、 next 指向后一个节点; 双向链表的第一个节点的prev指向 null ; 双向链表的最后一个节点的next指向 null ; 双向链表常见的操作(方法): append(element):向链表尾部添加一个新的项; inset(position,element):向链表的特定位置插入一个新的项; get(element):获取对应位置的元素; indexOf(element):返回元素在链表中的索引,如果链表中没有元素就返回-1; update(position,element):修改某个位置的元素; removeAt(position):从链表的特定位置移除一项; isEmpty

链表数据结构

这一生的挚爱 提交于 2020-03-08 10:54:17
python实现 链表 的代码如下所示: #链表的创建和连接函数#链表是由数据域item和next连接关系class Node: def __init__(self,item): self.item=item self.next=Nonea=Node(1)b=Node(2)c=Node(3)a.next=bb.next=cprint(a.next.item)#头插法创建链表(倒序)def creat_linklist_head(li): head=Node(li[0]) for element in li[1:]: node=Node(element) node.next=head head=node return head#尾插法创建链表(顺序)def creat_linklist_tail(li): head=Node(li[0]) tail=head for element in li[1:]: node=Node(element) tail.next=node tail=node return head#打印链表的各个元素的函数def print_linklist(lk): while lk: print(lk.item,end=",") lk=lk.nextlk=creat_linklist_head([1,2,3])print_linklist(lk)lk=creat

Docker部署Elasticsearch集群

旧巷老猫 提交于 2020-03-08 07:45:01
http://blog.sina.com.cn/s/blog_8ea8e9d50102wwik.html Docker部署Elasticsearch集群 参考文档: https://hub.docker.com/r/library/elasticsearch/ https://hub.tenxcloud.com/repos/tenxcloud/elasticsearch https://hub.alauda.cn/repos/library/elasticsearch 环境: CentOS 7.2 docker-engine-1.11.2 elasticsearch-2.3.3 前言: 虚拟机节点部署请参看 Elasticsearch 负载均衡集群 ,这里简单介绍下docker部署 本实验采用不同类型的节点集群(client x1, master x3, data x2) ela-client.example.com:192.168.8.10(client node) ela-master1.example.com:192.168.8.101(master node) ela-master2.example.com:192.168.8.102(master node) ela-master3.example.com:192.168.8.103(master node) ela

C++ vector.size() warning C4018

梦想的初衷 提交于 2020-03-08 07:07:30
node_vec为vector 若写为 for ( int j = 1 ; j < node_vec . size ( ) ; j ++ ) { node_vec [ j - 1 ] - > next = node_vec [ j ] ; } 也会运行得到正确的结果,但会有warning: warning C4018: “<”: 有符号/ 这是由于C++中vector的size()为unsigned int类型。 应该写为: for ( unsigned int j = 1 ; j < node_vec . size ( ) ; j ++ ) { node_vec [ j - 1 ] - > next = node_vec [ j ] ; } 来源: CSDN 作者: Gianna K 链接: https://blog.csdn.net/weixin_44208324/article/details/104555673

C结构体中不能有静态变量

送分小仙女□ 提交于 2020-03-08 06:55:53
C中struct只是类型声明,没有内存空间的分配,而static变量是需要分配内存的。,所以不能在结构体中定义静态变量 // C中struct只是类型声明,没有内存空间的分配,而static变量是需要分配内存的。 typedef struct Node { //static int count; int num ; struct Node * next ; } Node ; 来源: CSDN 作者: 明月映雪 链接: https://blog.csdn.net/ren_x_guo/article/details/104715344

ES6解构赋值

不想你离开。 提交于 2020-03-08 01:51:46
前面的话   我们经常定义许多对象和数组,然后有组织地从中提取相关的信息片段。在ES6中添加了可以简化这种任务的新特性:解构。解构是一种打破数据结构,将其拆分为更小部分的过程。本文将详细介绍ES6解构赋值 引入   在ES5中,开发者们为了从对象和数组中获取特定数据并赋值给变量,编写了许多看起来同质化的代码 let options = { repeat: true, save: false }; // 从对象中提取数据 let repeat = options.repeat, save = options.save;   这段代码从options对象中提取repeat和save的值,并将其存储为同名局部变量,提取的过程极为相似   如果要提取更多变量,则必须依次编写类似的代码来为变量赋值,如果其中还包含嵌套结构,只靠遍历是找不到真实信息的,必须要深入挖掘整个数据结构才能找到所需数据   所以ES6添加了解构功能,将数据结构打散的过程变得更加简单,可以从打散后更小的部分中获取所需信息 对象解构   对象字面量的语法形式是在一个赋值操作符左边放置一个对象字面量 let node = { type: "Identifier", name: "foo" }; let { type, name } = node; console.log(type); // "Identifier"

npm install、npm install --save与npm install -dev区别

时光总嘲笑我的痴心妄想 提交于 2020-03-07 17:41:45
npm install X: 会把X包安装到node_modules目录中 不会修改package.json 之后运行npm install命令时,不会自动安装X npm install X –save: 会把X包安装到node_modules目录中 会在package.json的dependencies属性下添加X 之后运行npm install命令时,会自动安装X到node_modules目录中 之后运行npm install –production或者注明NODE_ENV变量值为production时,会自动安装msbuild到node_modules目录中 npm install X –save-dev: 会把X包安装到node_modules目录中 会在package.json的devDependencies属性下添加X 之后运行npm install命令时,会自动安装X到node_modules目录中 之后运行npm install –production或者注明NODE_ENV变量值为production时,不会自动安装X到node_modules目录中 使用原则: 运行时需要用到的包使用–save,否则使用–save-dev。 来源: 51CTO 作者: 慢慢来比较 链接: https://blog.51cto.com/14660222/2474384

从网上下载一个vue项目,跑起来的全过程

风格不统一 提交于 2020-03-07 15:55:18
一、首先从github上来一个项目下来,在这里我就不细说了。 二、先查看项目所需要的Node版本和vue版本,进入到项目的主目录下 点击package.json文件查看该项目所需要到的vue、node版本(node再带npm) 三、开始下载node,官网:https://nodejs.org/zh-cn/,下载完安装包后,一直下一步,安装好后,使用代码测试一下安装好没有。 node -v 也顺便检擦一下npm版本(安装node会自带npm) npm -v 显示版本号说明就可以了,还不行的话重启试试。 安装完node之后,最好配置成阿里源(不然外网的源卡的飞起。。。) 直接在doc界面中输入代码即可。 npm config set registry https://registry.npm.taobao.org 四、安装vue-cli,直接在npm中下载即可,项目里的版本是2.5.16,我直接用代码下载的是2.9.6(项目启动成功,版本没有完成对应,应该不要紧) npm install -g vue-cl 下载成功后,直接在doc界面输入vue -V出现版本号说明安装成功。 注意:发现npm install -g vue-cl下载的vue,也可以根据指定的版本号下载(这步可以不用理) npm install -g vue-cli@2.5.6 这个版本号要注意了

nodejs 批量压缩文件或文件夹

蓝咒 提交于 2020-03-07 10:21:56
/** * Created by Administrator on 2017/6/9. */ var fs = require('fs'); var archiver = require('archiver'); var path=__dirname; var dirList = fs.readdirSync(path); var status=true; dirList.forEach(function(item){ console.log(item); // create a file to stream archive data to. var output = fs.createWriteStream('F:\\work\\wxapp\\input\\'+item+'.zip'); var archive = archiver('zip', { zlib: { level: 9 } // Sets the compression level. }); // listen for all archive data to be written output.on('close', function() { console.log(archive.pointer()/1024/1024 + 'M'); console.log('压缩完成'); }); // good