NodeJs学习记录(一)初步学习,杂乱备忘
2016/12/26 星期一
1.在win7下安装了NodeJs
1)进入官网 https://nodejs.org/en/download/,下载对应的安装包,我目前下载的是node-v6.2.0-x64.msi,安装的时候一直Next即可,
装好之后,会在安装目录下产生一个名为 node_modules 的文件夹,用于存放第三方包。
2)安装完毕后,打开cmd,输入"node -v",测试环境变量是否已经自动配好。
3)进入官网 http://nodejs.org/dist/v0.10.26/x64/node.exe 下载node.exe,教程里说这个是二进制文件,并不是很懂。
这个版本应该是比较旧的,试图进入 http://nodejs.org/dist/ 挑选最新版本进行下载,但是日期好像并不是有序的,于是先下载这个旧版本用着。
点开下载好的node.exe,是一个命令行窗口,输入“node”无反应,尝试输入Js代码 console.log('aaaa'),能正常返回运行结果,姑且当作可以运行Js代码的一个运行环境。
2.知道了NodeJs是类似于浏览器一样的Js解析器,当然NodeJs和浏览器所操作的对象和作用是不同的。
3.工具安装完毕后可以直接在cmd命令行下使用 “node" 命令切换到Js运行环境下,直接编写Js代码,例如console.log('aaaa') ,回车后可以得到运行结果。
因此也可以执行正则表达式,验证表达式是否正确(题外话了)。
要运行一个.js文件的方法是:切换到该js文件目录下,使用命令"node xxx.js" 即可。
(另外好久没用忘记了cmd下切换磁盘目录是 "d:",而不是 "cd d:",表示汗颜)
4.关于NodeJs的模块我没有看太懂,但是明白了require函数用于导入模块时,例如 var module1=require('./foo')
1)此处表示引用当前目录下的foo.js文件,并转换为对象module1,并且Js文件名可以省略掉“.js”。
2)引用路径除了可以使用绝对路径和相对路径以外,还支持模糊路径,例如 require('foo/bar') ,这个地方并不是很懂,也不知道在可以省略“.js"的情况下如何识别目录名和文件名?
下次学习的时候再看。
2016/12/27 星期二
1.安装了微软的Visual Studio Code(VSCode),用于后期上手实践用。
2.NPM工具
1)随着之前安装nodejs时便一同安装了,属于包管理工具,用于下载第三方包、命令行(不懂,记号)到本地使用,也可以上传用(暂时用不上)。
2)在cmd窗口中,尝试使用npm install argv下载第三方包"argv"时出现error错误,与json有关,查看教程发现当前目录下必须有一个package.json文件。
经过多次尝试发现,除了必须有这个json文件,如果文件内容为空也是无法下载的。于是我随意复制了教程里的以下内容到该文件中,此处是一段与argv毫无关系的内容:
{
"name": "node-echo",
"main": "./lib/echo.js"
}
再次执行npm install命令,命令窗口会显示下载下来的包以及版本号,可以看到的是下载了 argv 及express(可能是依赖包) 这两个包,版本分别为0.0.2和4.14.0。
对应的, node_modules 文件夹下会新增与包名同名的文件夹。
接着我删除了刚刚新增的package.json文件、argv、express文件夹。再次使用安装命令npm install argv,发现 argv 仍然能下载成功,但是express不会下载。
此处不是很理解,记号。
3)另外,点开node_modules文件下的各个第三方包,发现都有 package.json和README.md文件,感觉 package.json 是需要再深入理解一下的。
3.修改package.json文件以批量下载安装包
把刚刚的json文件内容修改为:
{
"name": "node-echo",
"main": "./lib/echo.js",
"dependencies": {
"argv": "0.0.1"
}
}
接着在cmd窗口执行npm install,运行完毕后进入到node_modules/argv,点开package.json查看版本号,确实已经被设定的"0.0.1"版本覆盖了,下载成功。
NodeJs学习记录(一)初步学习,杂乱备忘的更多相关文章
- 学习Swift--枚举的初步认识 --个人备忘 大神勿喷
枚举定义了一个通用类型的一组相关值,使你可以在你的代码中以一种安全的方式来使用这些值. // 定义枚举的语法 enum Chips { // 定义了薯片的枚举,包含了3种口味的成员 case Toma ...
- leveldb 学习记录(四)Log文件
前文记录 leveldb 学习记录(一) skiplistleveldb 学习记录(二) Sliceleveldb 学习记录(三) MemTable 与 Immutable Memtablelevel ...
- [CSS3备忘] transform animation 等
一些CSS不经常用就会忘记,好吧,现在整理再学习一下,也留做备忘,方便以后查看... perspective的理解: 1.数值越小,用户与3D空间Z平面距离越近,视觉效果更令人印象深刻(比如看电影,越 ...
- 初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助
初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助,如果有bug或者更好的优化方案,也请批评与指正,谢谢,代码如下: var fs = require('f ...
- NodeJS 学习记录
这里是我学习NodeJs的学习记录 URL:网址解析的好帮手 URL,URI 首先,URI是uniform resource identifier,统一资源标识符,用来唯一的标识一个资源.而URL是u ...
- json2.js的初步学习与了解
json2.js的初步学习与了解,想要学习json的朋友可以参考下. json2.js的初步学习与了解 1.)该js的下载地址是:http://www.json.org/json2.js 2.)在页面 ...
- JavaScript 教程学习进度备忘(二)
备忘:之前,只将“JS 教程”学习完毕,这篇记录:“JS HTML DOM ”.“JS 对象”.“JS Window”.“JS 库” 书签:跳过:另外跳过的内容有待跟进 _______________ ...
- linux学习记录(第六章、Linux 的文件权限与目录配置)
书看的是鸟哥的私房菜,系统用的是centos.被微软坑了N年才发现linux才是王道. 在这里记录些学习的记录.备忘
- Jquery基础教程第二版学习记录
本文仅为个人jquery基础的学习,简单的记录以备忘. 在线手册:http://www.php100.com/manual/jquery/第一章:jquery入门基础jquery知识:jquery能做 ...
随机推荐
- openstack setup demo Identity service
openstack Identity service 名叫keystone.它提供了用户校验,以及服务目录查询(即列出所有的服务以及相关信息)等功能. keystone 主要包含以下几个部分 Serv ...
- 功能超级强大的网络工具nc
摘自:http://www.linuxso.com/command/nc.html 功能说明:功能强大的网络工具语 法:nc [-hlnruz][-g<网关...>][-G<指向器数 ...
- 【CV论文阅读】Detecting events and key actors in multi-person videos
论文主要介绍一种多人协作的视频事件识别的方法,使用attention模型+RNN网络,最近粗浅地学习了RNN网络,它比较适合用于处理序列的存在上下文作用的数据. NCAA Basketball数据集 ...
- yarn-cli 缓存
yarn cache list Yarn 会在你的用户目录下开辟一块全局缓存用以保存下载的包.yarn cache list 用于列出所有已经缓存的包. yarn cache dir 执行 yarn ...
- web常见之音乐播放器
代码来源于:这位Github小伙伴,我只负责解说! 效果图如下: 先上HTML代码 源码: <!DOCTYPE html> <html> <head> <me ...
- 静态链表的C++实现
静态链表是使用数组实现的能够高速插入和删除数据的链表,静态链表和链式单链表比的缺点在于链表的长度仅仅能初始化设置好,而相相应普通的顺序存储的链表,静态链表不能实现高速的读写随意的元素. 当然静态链表给 ...
- Eclipse + CDT引入OpenCV失败的解决的方法
Android JNI开发中用到了OpenCV,由于想通过JNI实现,就没有去用Android层的Lib引用. 可是操作中发如今.cpp文件中include的时候发现"#include &l ...
- [办公应用]如何打印较小边距的PPT讲义(或者每页打印16页)
关键词:打印 PPT 讲义 4张 边距 今天同事问我如何打印PowerPoint的讲义.她自己使用PowerPoint打印讲义,设置每页4张,但是页边距太大:觉得浪费很大. 经过网上查阅后,现将方 ...
- cordova常用命令
安装 cordova: npm install -g cordova 创建应用程序 cordova create hello com.example.hello HelloWorld 添加平台 cor ...
- ViewPager嵌套ViewPager后子ViewPager滑动不正常问题
ViewPager嵌套ViewPager后,滑动事件没法在子ViewPager里面响应. 解决办法是自定义子ViewPager. 以下代码是转载的,经本人测试,可以用!!! 转载地址:http://b ...