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中void(0)的具体含义解释
Feb 27 Javascript
Javascript 更新 JavaScript 数组的 uniq 方法
Jan 23 Javascript
Prototype Hash对象 学习
Jul 19 Javascript
javascript面向对象之访问对象属性的两种方式分析
Jan 13 Javascript
jQuery操作JSON的CRUD用法实例
Feb 25 Javascript
jQuery的end()方法使用详解
Jul 15 Javascript
javascript 将共享属性迁移到原型中去的实现方法
Aug 31 Javascript
浅谈vue实现数据监听的函数 Object.defineProperty
Jun 08 Javascript
Node.js中使用mongoose操作mongodb数据库的方法
Sep 12 Javascript
基于node.js实现微信支付退款功能
Dec 19 Javascript
微信小程序时间控件picker view使用详解
Dec 28 Javascript
原生js实现表格翻页和跳转
Sep 29 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图片缩放类)
2014/03/14 PHP
PHP is_array() 检测变量是否是数组的实现方法
2016/06/13 PHP
php array_merge_recursive 数组合并
2016/10/26 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
2016/12/12 PHP
漂亮的仿flash菜单,来自蓝色经典
2006/06/26 Javascript
fromCharCode和charCodeAt 方法
2006/12/27 Javascript
JavaScript flash复制库类 Zero Clipboard
2011/01/17 Javascript
创建公共调用 jQuery Ajax 带返回值
2012/08/01 Javascript
JS中for循序中延迟加载动态效果的具体实现
2013/08/18 Javascript
各浏览器对document.getElementById等方法的实现差异解析
2013/12/05 Javascript
利用js读取动态网站从服务器端返回的数据
2014/02/10 Javascript
前端jquery部分很精彩
2016/05/03 Javascript
javascript事件冒泡简单示例
2016/06/20 Javascript
JavaScript中访问id对象 属性的方式访问属性(实例代码)
2016/10/28 Javascript
jquery日历插件e-calendar升级版
2016/11/10 Javascript
AngularJS使用ocLazyLoad实现js延迟加载
2017/07/05 Javascript
vue中echarts3.0自适应的方法
2018/02/26 Javascript
使用wxapp-img-loader自定义组件实现微信小程序图片预加载功能
2018/10/18 Javascript
three.js实现圆柱体
2018/12/30 Javascript
[03:43]TI9战队采访——PSG.LGD
2019/08/22 DOTA
python解析xml文件实例分析
2015/05/27 Python
Python切片知识解析
2016/03/06 Python
python实现小球弹跳效果
2019/05/10 Python
python实现的汉诺塔算法示例
2019/10/23 Python
详解pycharm连接远程linux服务器的虚拟环境的方法
2020/11/13 Python
用OpenCV进行年龄和性别检测的实现示例
2021/01/29 Python
曼城官方网上商店:Manchester City
2019/09/10 全球购物
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2012/04/17 面试题
企业管理标语
2014/06/10 职场文书
2014客服代表实习自我鉴定
2014/09/18 职场文书
劳动仲裁调解书
2015/05/20 职场文书
python 实现体质指数BMI计算
2021/05/26 Python
使用SQL实现车流量的计算的示例代码
2022/02/28 SQL Server
css3 选择器
2022/05/11 HTML / CSS
鸿蒙3.0体验感怎么样? 鸿蒙3.0系统评测向
2022/08/14 数码科技