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能做 ...
随机推荐
- HashMap源码分析1:添加元素
本文源码基于JDK1.8.0_45. final V putVal(int hash, K key, V value, boolean onlyIfAbsent, boolean evict) { N ...
- MongoDB小结20 - find【查询条件$size】
size可以获得指定数组长度的文档 db.user.find({"fruit":{"$size":3}},{"_id":0}) { &quo ...
- [转]一个完整的Installshield安装程序实例
@import url("http://files.cnblogs.com/files/go-jzg/vs.css"); --> Installshield安装程序实例—基本 ...
- TCP/IP协议族-----22、万维网和HTTP
- 数学之路-分布式计算-storm(3)
.安装zookeeper 本博客全部内容是原创.假设转载请注明来源 http://blog.csdn.net/myhaspl/ myhaspl@aaayun:~/jzmq-master$cd .. m ...
- 魔兽争霸3 冰封王座 w3g文件如何打开
w3g文件怎么样才能看??? 满意回答 检举|2011-11-10 11:23 你应该是玩魔兽争霸的吧,如果是就找到你魔兽安装文件夹里面有个replay的文件夹,把w3g格式的文件放入该文件夹,再进入 ...
- 【Hibernate学习】 ——ORM(一)
Hibernate是一种能实现ORM的框架. ORM即Object Relational Mapping.对象关系映射.也就是将关系数据库中表的数据映射成为对象.也就是说将表与表之间的操作映射成对象与 ...
- lua遍历目录
require"lfs" function findindir (path, wefind, r_table, intofolder) for file in lfs.dir(pa ...
- B. Error Correct System (CF Round #296 (Div. 2))
B. Error Correct System time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
- ASP.NET MVC Model之二模型绑定
Asp.net mvc中的模型绑定,或许大家经常用,但是具体说他是怎么一回事,可能还是会有些陌生,那么,本文就带你理解模型绑定.为了理解模型绑定,本文会先给出其定义,然后对通过比,来得出使用模型绑定的 ...