一、主要执行的文件命名一般为main.js

var aModule =require('./a.js');//相对路径

var aModule =require('a.js');//专门从node_modules文件夹中查找模块

var aModule =require('/a.js');//查找的是根目录文件下的文件

var aModule =require('../a.js')//找的是上一个文件夹下的文件

var gulp = require('./gulp');//如果只有文件夹路径,默认引入该文件夹下面的index.js
 

二、读写文件:

fs.Module.writeFile('./text', '教育', function(error){

    console.log('写文件完成');
     console.log(error);
});//写文件

2.//异步读文件,不会阻塞主线程

fs.readFile('./app.js',(error,result)=>{

console.log(result.toString());

console.log(result+'');

console.log('异步:'+result);

})

3.//同步读文件,会阻塞主线程

var result =fs.readFileSync('./app.js');

//读写文件出错,直接报错。

console.log('同步:'+result);

4.//写文件

fs.writeFileSync('./test.txt','教育');

//追加写文件

fs.appendFileSync('./test.txt',',用良心做教育');

//删除文件夹

fs.unlinkSync('./test.txt');

//重命名

//fs.renameSync('./app.js','./test.js');

//创建文件夹

fs.mkdirSync('./dist');

//删除文件夹

fs.rmdirSync('./dist');

//读文件夹

var result =fs.readdirSync('D;//...') ;

console.log(result)

三、url模块

var url = require('url');
var path = 'http://www.qianfeng.com:90/index/course?name=html5&class=1803#3'
// 解析url路径
var result = url.parse(path);
console.log(result);
/*
Url {
  protocol: 'http:',
  slashes: true,
  auth: null,
  host: 'www.qianfeng.com:90',
  port: '90',
  hostname: 'www.qianfeng.com',
  hash: '#3',
  search: '?name=html5&class=1803',
  query: 'name=html5&class=1803',//query: { name: 'html5', class: '1803' },
  pathname: '/index/course',
  path: '/index/course?name=html5&class=1803',
  href: 'http://www.qianfeng.com:90/index/course?name=html5&class=1803#3' }
*/
//封装url字符串
var pathObj = {
    protocol: 'https:',
    hostname: 'www.baidu.com',
    port: 443,//http默认端口号80,https默认端口号443
    pathname: '/index',
    query: {
        keyword: 'html5培训'
    },
    hash: '#main'
}
var result = url.format(pathObj);
console.log(result);
//对url中的参数进行操作
var qs = require('querystring');
// 对参数进行解析
var query = 'name=html5&class=1803';
var result = qs.parse(query);
console.log(result);
// 封装参数
var queryObj = {
    course: ['html5', 'UI', 'java', 'python'],
    price: 18800
}
var result = qs.stringify(queryObj);
console.log(result);
//   course=html5&course=UI&course=java&course=python&price=18800
//   course[]=html5&course[]=UI&course[]=java&course[]=python&price=18800
//编码
var result = qs.escape('深圳');
console.log(result);
// 解码
var result = qs.unescape('file:///D:/%E4%B8%89%E9%98%B6%E6%AE%B5/sz1803/day0716/1.%E6%A8%A1%E5%9D%97%E5%8C%96%E5%BC%80%E5%8F%91/www/index.html');
console.log(result);

node第一天的更多相关文章

  1. 接触node第一步

    趁着工作不忙,今天来系统记录一下安装node环境: 1.node下载地址为:https://nodejs.org/en/,检查是否安装成功:如果输出版本号,说明我们安装node环境成功:node -v ...

  2. node第一个参数必须是err

    Node.js 约定回调函数第一个参数必须是错误对象err: 问题:Node.js约定回调函数第一个参数必须是错误对象err,如果没有错误该参数就是null 原因:异步执行分成两段,在两段之间抛出异常 ...

  3. node 第一天

    在开发的过程中,几乎不可能一次性就能写出毫无破绽的程序,断点调试代码是一个普遍的需求. 作为前端开发工程师,以往我们开发的JavaScript程序都运行在浏览器端,利用Chrome提供的开发者工具就可 ...

  4. node第一个程序

    var http = require('http') var url = require('url') var fs=require("fs") var router = requ ...

  5. 初级node+express建站

    我的建站经历. 我建站的原因也很简单,就仅仅想有一个linux服务器玩一玩,但是还没有想到要怎么玩,就先搭建一个web服务吧.因为我工作的时候可能会用到. 我就从头开始讲起走. 先买了个云服务器,选择 ...

  6. DOM(一):节点层次-Node类型

    Node类型DOM1级定义了一个Node接口,该接口将由DOM中的所有节点类型实现,每个节点都有一个nodeType属性,用于表明节点的类型.节点类型由在Node类型中定义的下列12个数值常量来表示, ...

  7. node服务端渲染(完整demo)

    简介 nodejs搭建多页面服务端渲染 技术点 koa 搭建服务 koa-router 创建页面路由 nunjucks 模板引擎组合html webpack打包多页面 node端异步请求 服务端日志打 ...

  8. PCB 第一个node.js应用

    一.Node安装地址: https://nodejs.org/zh-cn/ 二.Node第一个应用实例 启动webnode.js应用: node webnode.js webnode.js代码: va ...

  9. 将js进行到底:node学习8

    Node.js数据库篇--MongoDB 废话:现代web开发可以说完全是数据库驱动的,而对于我这样的PHP程序员来说,对Mysql向来十分钟情,MongoDB的兴起让我不能再对Mysql孤注一掷,& ...

随机推荐

  1. JS事件之鼠标悬浮窗(鼠标悬浮窗抖动问题的解决)

    鼠标进入显示悬浮窗,思路有简单有困难. 首先要注意的是我们要给悬浮窗设置position为absolute,不然我们改了 style.left style.top发现没有变化很尴尬.其余的内容看起来就 ...

  2. Luogu P4159 [SCOI2009]迷路 矩阵快速幂+精巧转化

    大致就是矩阵快速幂吧.. 这个时候会发现这些边权$\le 9$,然后瞬间想到上回一道题:是不是可以建一堆转移矩阵再建一个$lcm(1,2,3,4,5,6,7,8,9)$的矩阵?...后来发现十分的慢q ...

  3. Luogu P3223 [HNOI2012]排队 组合

    本来做了一道  P4901 排队 后来发现自己做错题了...到也都是数学qwq 这题最恶心的就是两只(雾)老师. 那我们分类讨论: 1.两个老师之间是男生: $ A(n,n)*A(n+1,2)*A(n ...

  4. jdb应用

    场景: 外网可以登录远程主机,但是因为安全限制,不能在外网直接访问docker应用的端口,因此不能远程调试.远程主机shell内部可以连接docker应用,也没有图形界面,没有log,考虑使用原始的j ...

  5. SpringMVC09 Converter变流器、数据回显、异常测试

    1.配置web.xml文件 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3// ...

  6. iOS 收藏的笔记

    目录 UI 资料类 网络篇 图表 动画 菜单栏 数据存储和数据库 第三方库 社交分享 刷新 视频音频 其他 阅读 JS 导航 系统 支付 书籍 工具类 完整项目收集 DEMO UI http://ww ...

  7. ssm(Spring、Springmvc、Mybatis)实战之淘淘商城-第十一天(非原创)

    文章大纲 一.课程介绍二.订单系统介绍三.项目源码与资料下载四.参考文章 一.课程介绍 一共14天课程(1)第一天:电商行业的背景.淘淘商城的介绍.搭建项目工程.Svn的使用.(2)第二天:框架的整合 ...

  8. 使用Kubernetes的java-client实现Deployment的部署及更新操作

    1. 背景介绍 需求: 针对多种协议SDK构造探针,测试公司接入机服务状况(每一个探针应对单一接入机,接入机数量可能会动态变化). 难点: 大多数协议SDK均不支持多实例运行,且部分SDK通过生成文件 ...

  9. Photoshop之切图

    基本(繁琐)操作: 切JPG图(即带背景的图): 1.         选切片工具(另外,切片选择工具能选择切片和删除切片),切 2.         存储为Web所用格式(快捷键Ctrl + Shi ...

  10. [转] eclipce使用vim 开启装逼模式

    原文:http://blog.csdn.net/fatal360/article/details/12321613 1.在eclipse中使用vi模式的插件Vrapper打开eclipse,在Help ...