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 相关文章推荐
25个好玩的JavaScript小游戏分享
Apr 22 Javascript
关于js拖拽上传 [一个拖拽上传修改头像的流程]
Jul 13 Javascript
js三种排序算法分享
Aug 16 Javascript
解析jQuery与其它js(Prototype)库兼容共存
Jul 04 Javascript
深入理解javascript动态插入技术
Nov 12 Javascript
从数组中随机取x条不重复数据的JS代码
Dec 24 Javascript
jquery批量设置属性readonly和disabled的方法
Jan 24 Javascript
document.forms[].submit()使用介绍
Feb 19 Javascript
JavaScript函数获取事件源的小例子
May 14 Javascript
AngularJS学习第一篇 AngularJS基础知识
Feb 13 Javascript
使用原生js+canvas实现模拟心电图的实例
Sep 20 Javascript
layui异步加载table表中某一列数据的例子
Sep 16 Javascript
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
使用adodb lite解决问题
2006/12/31 PHP
实用PHP会员权限控制实现原理分析
2011/05/29 PHP
PHP实现RTX发送消息提醒的实例代码
2017/01/03 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
Yii2框架类自动加载机制实例分析
2018/05/02 PHP
thinkPHP3.2.3结合Laypage实现的分页功能示例
2018/05/28 PHP
php 使用expat方式解析xml文件操作示例
2019/11/26 PHP
用roll.js实现的图片自动滚动+鼠标触动的特效
2007/03/18 Javascript
JS对URL字符串进行编码/解码分析
2008/10/25 Javascript
JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合
2010/01/12 Javascript
javascript学习笔记(五)正则表达式
2011/04/08 Javascript
jQuery循环滚动新闻列表示例代码
2014/06/17 Javascript
可以浮动某个物体的jquery控件用法实例
2015/07/24 Javascript
JS 实现倒计时数字时钟效果【附实例代码】
2016/03/30 Javascript
jQuery实现的倒计时效果实例小结
2016/04/16 Javascript
微信JSAPI支付操作需要注意的细节
2017/01/10 Javascript
Angularjs 动态添加指令并绑定事件的方法
2017/04/13 Javascript
五步轻松实现zTree的使用
2017/11/01 Javascript
@angular前端项目代码优化之构建Api Tree的方法
2018/12/24 Javascript
python实现360的字符显示界面
2014/02/21 Python
Python操作SQLite简明教程
2014/07/10 Python
python实现爬取千万淘宝商品的方法
2015/06/30 Python
如何在Python函数执行前后增加额外的行为
2016/10/20 Python
解决Django migrate不能发现app.models的表问题
2019/08/31 Python
基于python的selenium两种文件上传操作实现详解
2019/09/19 Python
使用python制作一个解压缩软件
2019/11/13 Python
Tensorflow tf.dynamic_partition矩阵拆分示例(Python3)
2020/02/07 Python
浅谈PyTorch中in-place operation的含义
2020/06/27 Python
selenium+python实现基本自动化测试的示例代码
2021/01/27 Python
应用艺术专业个人的自我评价
2014/01/03 职场文书
思想作风整顿个人剖析材料
2014/10/06 职场文书
颐和园英文导游词
2015/01/30 职场文书
2015年保卫科工作总结
2015/05/14 职场文书
企业廉洁教育心得体会
2016/01/20 职场文书
Java 超详细讲解ThreadLocal类的使用
2022/04/07 Java/Android
SpringCloud Function SpEL注入漏洞分析及环境搭建
2022/04/08 Java/Android