node.js中的path.normalize方法使用说明


Posted in Javascript onDecember 08, 2014

方法说明:

输出规范格式的path字符串。

语法:

path.normalize(p)

由于该方法属于path模块,使用前需要引入path模块(var path= require(“path”) )

例子:

path.normalize('/foo/bar//baz/asdf/quux/..')

// returns

'/foo/bar/baz/asdf'

源码:

// windows version 

  exports.normalize = function(path) { 

    var result = splitDeviceRe.exec(path), 

        device = result[1] || '', 

        isUnc = device && device.charAt(1) !== ':', 

        isAbsolute = exports.isAbsolute(path), 

        tail = result[3], 

        trailingSlash = /[\\\/]$/.test(tail); 

 

    // If device is a drive letter, we'll normalize to lower case. 

    if (device && device.charAt(1) === ':') { 

      device = device[0].toLowerCase() + device.substr(1); 

    } 

 

    // Normalize the tail path 

    tail = normalizeArray(tail.split(/[\\\/]+/).filter(function(p) { 

      return !!p; 

    }), !isAbsolute).join('\\'); 

 

    if (!tail && !isAbsolute) { 

      tail = '.'; 

    } 

    if (tail && trailingSlash) { 

      tail += '\\'; 

    } 

 

    // Convert slashes to backslashes when `device` points to an UNC root. 

    // Also squash multiple slashes into a single one where appropriate. 

    if (isUnc) { 

      device = normalizeUNCRoot(device); 

    } 

 

    return device + (isAbsolute ? '\\' : '') + tail; 

  };

Javascript 相关文章推荐
javascript 冒泡排序 正序和倒序实现代码
Dec 14 Javascript
分享精心挑选的12款优秀jQuery Ajax分页插件和教程
Aug 09 Javascript
javascript当中的代码嗅探扩展原生对象和原型(prototype)
Jan 11 Javascript
Javascript浮点数乘积运算出现多位小数的解决方法
Feb 17 Javascript
JavaScript模板引擎用法实例
Jul 10 Javascript
一种Javascript解释ajax返回的json的好方法(推荐)
Jun 02 Javascript
chrome浏览器如何断点调试异步加载的JS
Sep 05 Javascript
微信js-sdk预览图片接口及从拍照或手机相册中选图接口用法示例
Oct 13 Javascript
利用javascript实现的三种图片放大镜效果实例(附源码)
Jan 23 Javascript
详解Vue.js项目API、Router配置拆分实践
Mar 16 Javascript
Node快速切换版本、版本回退(降级)、版本更新(升级)
Jan 07 Javascript
Vue中插槽slot的使用方法与应用场景详析
Jun 08 Vue.js
node.js中的path.sep方法使用说明
Dec 08 #Javascript
node.js中的path.resolve方法使用说明
Dec 08 #Javascript
node.js中的events.EventEmitter.listenerCount方法使用说明
Dec 08 #Javascript
node.js中的dns.getServers方法使用说明
Dec 08 #Javascript
AngularJS入门知识之MVW类框架的编程思想探讨
Dec 08 #Javascript
Js中使用hasOwnProperty方法检索ajax响应对象的例子
Dec 08 #Javascript
ECMAScript5中的对象存取器属性:getter和setter介绍
Dec 08 #Javascript
You might like
php网上商城购物车设计代码分享
2012/02/15 PHP
php中将汉字转换成拼音的函数代码
2012/09/08 PHP
php实现执行某一操作时弹出确认、取消对话框
2013/12/30 PHP
常用PHP框架功能对照表
2014/10/23 PHP
详解PHP的Laravel框架中Eloquent对象关系映射使用
2016/02/26 PHP
浅析PHP数据导出知识点
2018/02/17 PHP
如何让动态插入的javascript脚本代码跑起来。
2007/01/09 Javascript
JS 常用校验函数
2009/03/26 Javascript
Javascript变量作用域详解
2013/12/06 Javascript
基于jQuery实现多层次的手风琴效果附源码
2015/09/21 Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
2016/06/24 Javascript
React-Native 组件之 Modal的使用详解
2017/08/08 Javascript
浅谈Angular路由守卫
2017/08/26 Javascript
微信小程序 按钮滑动的实现方法
2017/09/27 Javascript
浅谈vue引入css,less遇到的坑和解决方法
2018/01/20 Javascript
Angular4 ElementRef的应用
2018/02/26 Javascript
在vue中使用css modules替代scroped的方法
2018/03/10 Javascript
微信小程序按钮去除边框线分享页面功能
2018/08/27 Javascript
React Hooks 实现和由来以及解决的问题详解
2020/01/17 Javascript
Javascript Worker子线程代码实例
2020/02/20 Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
2020/11/02 Javascript
python执行scp命令拷贝文件及文件夹到远程主机的目录方法
2019/07/08 Python
Python项目 基于Scapy实现SYN泛洪攻击的方法
2019/07/23 Python
django做form表单的数据验证过程详解
2019/07/26 Python
Python 中由 yield 实现异步操作
2020/05/04 Python
python 无损批量压缩图片(支持保留图片信息)的示例
2020/09/22 Python
css3 border-image使用说明
2010/06/23 HTML / CSS
波兰最大的电商平台:Allegro.pl
2021/02/06 全球购物
军训心得体会
2013/12/31 职场文书
家长给孩子的表扬信
2014/01/17 职场文书
给护士表扬信
2014/01/19 职场文书
财务会计毕业生个人求职信
2014/02/03 职场文书
小组合作学习反思
2014/02/18 职场文书
好的旅游活动方案
2014/08/19 职场文书
有关九一八事变的演讲稿
2014/09/14 职场文书
Vue2项目中对百度地图的封装使用详解
2022/06/16 Vue.js