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


Posted in Javascript onDecember 08, 2014

方法说明:

将多个参数组合成一个 path (详细请看例子)

语法:

path.join([path1], [path2], [...])

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

例子:

path.join('/foo', 'bar', 'baz/asdf', 'quux', '..')

// returns

'/foo/bar/baz/asdf'

path.join('foo', {}, 'bar')

// throws exception

TypeError: Arguments to path.join must be strings

源码:

// windows version 

  exports.join = function() { 

    function f(p) { 

      if (!util.isString(p)) { 

        throw new TypeError('Arguments to path.join must be strings'); 

      } 

      return p; 

    } 

 

    var paths = Array.prototype.filter.call(arguments, f); 

    var joined = paths.join('\\'); 

 

    // Make sure that the joined path doesn't start with two slashes, because 

    // normalize() will mistake it for an UNC path then. 

    // 

    // This step is skipped when it is very clear that the user actually 

    // intended to point at an UNC path. This is assumed when the first 

    // non-empty string arguments starts with exactly two slashes followed by 

    // at least one more non-slash character. 

    // 

    // Note that for normalize() to treat a path as an UNC path it needs to 

    // have at least 2 components, so we don't filter for that here. 

    // This means that the user can use join to construct UNC paths from 

    // a server name and a share name; for example: 

    // path.join('//server', 'share') -> '\\\\server\\share\') 

    if (!/^[\\\/]{2}[^\\\/]/.test(paths[0])) { 

      joined = joined.replace(/^[\\\/]{2,}/, '\\'); 

    } 

 

    return exports.normalize(joined); 

  };
Javascript 相关文章推荐
JavaScript类库D
Oct 24 Javascript
Js实现滚动变色的文字效果
Jun 16 Javascript
中文输入法不触发onkeyup事件的解决办法
Jul 09 Javascript
引用其它js时如何同时处理多个window.onload事件
Sep 02 Javascript
DeviceOne 让你一见钟情的App快速开发平台
Feb 17 Javascript
js实现倒计时及时间对象
Nov 15 Javascript
JavaScript创建对象的七种方式(推荐)
Jun 26 Javascript
Vue单文件组件基础模板小结
Aug 10 Javascript
微信小程序实现轮播图效果
Sep 07 Javascript
node 使用 async 控制并发的方法
May 07 Javascript
webpack4 CSS Tree Shaking的使用
Sep 03 Javascript
Handtrack.js库实现实时监测手部运动(推荐)
Feb 08 Javascript
node.js中的path.normalize方法使用说明
Dec 08 #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
You might like
需要使用php模板的朋友必看的很多个顶级PHP模板引擎比较分析
2008/05/26 PHP
关于二级目录拖拽排序的实现(源码示例下载)
2013/04/26 PHP
深入解析yii权限分级式访问控制的实现(非RBAC法)
2013/06/13 PHP
PHP生成唯一订单号的方法汇总
2015/04/16 PHP
phpstudy默认不支持64位php的解决方法
2017/02/20 PHP
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
2012/08/14 Javascript
JQuery为页面Dom元素绑定事件及解除绑定方法
2014/04/23 Javascript
深入理解JavaScript中的箭头函数
2015/07/28 Javascript
纯CSS3代码实现滑动开关效果
2015/08/19 Javascript
Bootstrap Table 在指定列中添加下拉框控件并获取所选值
2017/07/31 Javascript
ionic2懒加载配置详解
2017/09/01 Javascript
BootStrap TreeView使用实例详解
2017/11/01 Javascript
jQuery实现的滑块滑动导航效果示例
2018/06/04 jQuery
使用Vue做一个简单的todo应用的三种方式的示例代码
2018/10/20 Javascript
浅谈Vue.js 中的 v-on 事件指令的使用
2018/11/25 Javascript
使用layui实现树形结构的方法
2019/09/20 Javascript
浅谈Three.js截图并下载的大坑
2019/11/01 Javascript
javascript实现移动端触屏拖拽功能
2020/07/29 Javascript
微信小程序中target和currentTarget的区别小结
2020/11/06 Javascript
Python中实现常量(Const)功能
2015/01/28 Python
Python通过matplotlib绘制动画简单实例
2017/12/13 Python
Python爬虫框架Scrapy基本用法入门教程
2018/07/26 Python
linux下安装python3和对应的pip环境教程详解
2019/07/01 Python
Python: tkinter窗口屏幕居中,设置窗口最大,最小尺寸实例
2020/03/04 Python
python中什么是面向对象
2020/06/11 Python
html+css3实现的登录界面
2020/12/09 HTML / CSS
html5理解head_动力节点Java学院整理
2017/07/13 HTML / CSS
美国百年历史早餐食品供应商:Wolferman’s
2017/01/18 全球购物
教育英语专业毕业生的求职信
2014/03/13 职场文书
2014年五一活动策划方案
2014/03/15 职场文书
租赁意向书范本
2014/04/01 职场文书
生产车间标语
2014/06/11 职场文书
永不妥协观后感
2015/06/10 职场文书
2015新员工工作总结范文
2015/10/15 职场文书
导游词之云南丽江-泸沽湖
2019/09/26 职场文书