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 相关文章推荐
Asp.net下使用Jquery Ajax传送和接收DataTable的代码
Sep 12 Javascript
改变隐藏的input中value的值代码
Dec 30 Javascript
jquery实现不同大小浏览器使用不同的css样式表的方法
Apr 02 Javascript
DWR中各种java方法的调用
May 04 Javascript
jquery实现网页定位导航
Aug 23 Javascript
Angularjs中三种数据的绑定策略(“@”,“=”,“&”)
Dec 23 Javascript
jQuery中的一些小技巧
Jan 18 Javascript
ES6实现的遍历目录函数示例
Apr 07 Javascript
echarts设置图例颜色和地图底色的方法实例
Aug 01 Javascript
iview Upload组件多个文件上传的示例代码
Sep 30 Javascript
微信小程序结合Storage实现搜索历史效果
May 18 Javascript
Layui实现主窗口和Iframe层参数传递
Nov 14 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
在“咖啡之国”感受咖啡文化
2021/03/03 咖啡文化
如何把PHP转成EXE文件
2006/10/09 PHP
PHP中for循环语句的几种变型
2006/11/26 PHP
多个PHP中文字符串截取函数
2013/11/12 PHP
php使用指定编码导出mysql数据到csv文件的方法
2015/03/31 PHP
详解PHP中的 input属性(隐藏 只读 限制)
2017/08/14 PHP
laravel 解决Eloquent ORM的save方法无法插入数据的问题
2019/10/21 PHP
非常好的js代码
2006/06/27 Javascript
浅析jquery某一元素重复绑定的问题
2014/01/03 Javascript
js读取cookie方法总结
2014/10/31 Javascript
NodeJS使用jQuery选择器操作DOM
2015/02/13 NodeJs
如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据(附源码下载)
2016/02/23 Javascript
详谈Angular路由与Nodejs路由的区别
2017/03/05 NodeJs
vue开发调试神器vue-devtools使用详解
2017/07/13 Javascript
bootstrap paginator分页插件的两种使用方式实例详解
2017/11/14 Javascript
sublime text配置node.js调试(图文教程)
2017/11/23 Javascript
Angularjs实现多图片上传预览功能
2018/07/18 Javascript
微信小程序CSS3动画下拉菜单效果
2018/11/04 Javascript
vue-cli3.0如何使用CDN区分开发、生产、预发布环境
2018/11/22 Javascript
详解如何快速配置webpack多入口脚手架
2018/12/28 Javascript
layui 弹出删除确认界面的实例
2019/09/06 Javascript
VUEX采坑之路之获取不到$store的解决方法
2019/11/08 Javascript
Android模拟器无法启动,报错:Cannot set up guest memory ‘android_arm’ Invalid argument的解决方法
2016/07/01 Python
django实现用户登陆功能详解
2017/12/11 Python
python自动化生成IOS的图标
2018/11/13 Python
Pyqt5实现英文学习词典
2019/06/24 Python
python 消除 futureWarning问题的解决
2019/12/25 Python
keras之权重初始化方式
2020/05/21 Python
keras的load_model实现加载含有参数的自定义模型
2020/06/22 Python
大学生就业自荐信
2013/10/26 职场文书
互联网创业计划书的书写步骤
2014/01/28 职场文书
2014五年级班主任工作总结
2014/12/05 职场文书
学生检讨书
2015/01/27 职场文书
研究生毕业登记表的自我鉴定范文
2019/07/15 职场文书
python实现三阶魔方还原的示例代码
2021/04/28 Python
Java并发编程之详解CyclicBarrier线程同步
2021/06/23 Java/Android