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

 更新时间:2014年12月08日 12:00:32   投稿:junjie  
这篇文章主要介绍了node.js中的path.join方法使用说明,本文介绍了path.join的方法说明、语法、使用实例和实现源码,需要的朋友可以参考下

方法说明:

将多个参数组合成一个 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);
  };

相关文章

  • 在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解

    在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解

    在树莓派上运行NodeJS并不需要特别的配置,你只需要确保可以用openssh远程连接到你的树莓派就ok了,关于在Debian(Raspberry Pi)树莓派上安装NodeJS的方法,大家可以通过本文了解下
    2017-09-09
  • 基于nodejs的微信JS-SDK简单应用实现

    基于nodejs的微信JS-SDK简单应用实现

    这篇文章主要介绍了基于nodejs的微信JS-SDK简单应用实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • npm i报错以及解决方案实战案例

    npm i报错以及解决方案实战案例

    npm在前端开发流程中提供了非常完善的自动化工具链,但是同样由于其复杂性导致有很多奇奇怪怪的问题,下面这篇文章主要给大家介绍了关于npm i报错以及解决方案的相关资料,需要的朋友可以参考下
    2022-07-07
  • 三行命令切换Node.js版本的流程步骤

    三行命令切换Node.js版本的流程步骤

    如何在Windows上更新Node.js版本呢?有没有那种不需要重新安装软件再修改配置文件和环境变量的方法?你是否还在为可能要重新安装Node然后配置文件修改环境变量困扰?面就来介绍一下nvm更换node版本的步骤,需要的朋友可以参考下
    2024-01-01
  • nodejs中简单实现Javascript Promise机制的实例

    nodejs中简单实现Javascript Promise机制的实例

    这篇文章主要介绍了nodejs中简单实现Javascript Promise机制的实例,本文在nodejs中简单实现一个promise/A 规范,需要的朋友可以参考下
    2014-12-12
  • npm install总是卡住不动问题的解决办法

    npm install总是卡住不动问题的解决办法

    在我们安装完Node.js之后,需要使用npm命令来安装一些工具,下面这篇文章主要给大家介绍了关于npm install总是卡住不动问题的解决办法,需要的朋友可以参考下
    2022-05-05
  • nodejs6下使用koa2框架实例

    nodejs6下使用koa2框架实例

    本篇文章主要介绍了nodejs6下使用koa2框架实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • 详解使用nvm管理多版本node的方法

    详解使用nvm管理多版本node的方法

    本篇文章主要介绍了详解使用 nvm 管理多版本 node的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • Centos7 安装Node.js10以上版本的方法步骤

    Centos7 安装Node.js10以上版本的方法步骤

    这篇文章主要介绍了Centos7 安装Node.js10以上版本的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • node.js-v6新版安装具体步骤(分享)

    node.js-v6新版安装具体步骤(分享)

    下面小编就为大家带来一篇node.js-v6新版安装具体步骤(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09

最新评论