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

方法说明:

输出规范格式的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;
  };

(0)

相关推荐

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

    方法说明: 提取出用 '/' 隔开的path的最后一部分.(8详见例子) 语法: 复制代码 代码如下: path.basename(p, [ext]) 由于该方法属于path模块,使用前需要引入path模块(var path= require("path") ) 接收参数: p                    要处理的path ext                 要过滤的字符 例子: 复制代码 代码如下: var path= require("path")

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

    方法说明: 返回path的目录.类似于UNIX目录命令. 语法: 复制代码 代码如下: path.dirname(p) 由于该方法属于path模块,使用前需要引入path模块(var path= require("path") ) 接收参数: p        path地址 例子: 复制代码 代码如下: var path= require("path"); path.dirname('/foo/bar/baz/asdf/quux') // returns '/foo

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

    方法说明: 检测path是否为绝对路径.一个绝对路径会解析到相同的位置,无论是不是在工作目录. 语法: 复制代码 代码如下: path.isAbsolute(path) 由于该方法属于path模块,使用前需要引入path模块(var path= require("path") ) 接收参数: path         path路径 例子: 复制代码 代码如下: //Posix examples: path.isAbsolute('/foo/bar') // true path.isAb

  • 深入理解node.js之path模块

    node之path模块 //引用该模块 var path = require("path"); 1.路径解析,得到规范化的路径格式 //对window系统,目录分隔为'\', 对于UNIX系统,分隔符为'/',针对'..'返回上一级:/与\\都被统一转换 //path.normalize(p); var myPath = path.normalize(__dirname + '/test/a//b//../c/utilyou.mp3'); console.log(myPath); //

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

    方法说明: 将参数 to 位置的字符解析到一个绝对路径里. 语法: 复制代码 代码如下: path.resolve([from ...], to) 由于该方法属于path模块,使用前需要引入path模块(var path= require("path") ) 接收参数: from                     源路径 to                         将被解析到绝对路径的字符串 例子: 复制代码 代码如下: path.resolve('/foo/bar',

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

    方法说明: 方法将返回平台的真实路径,多个用 ":" 或 ";" 隔开. 语法: 复制代码 代码如下: path.delimiter 由于该方法属于path模块,使用前需要引入path模块(var path= require("path") ) 接收参数: 无 例子: 复制代码 代码如下: //在 *nix 系统上的例子:   console.log(process.env.PATH) // '/usr/bin:/bin:/usr/sbin:/s

  • Node.js中路径处理模块path详解

    前言 在node.js中,提供了一个path某块,在这个模块中,提供了许多使用的,可被用来处理与转换路径的方法与属性,将path的接口按照用途归类,仔细琢磨琢磨,也就没那么费解了.下面我们就来详细介绍下关于Node.js中的路径处理模块path. 获取路径/文件名/扩展名 获取路径:path.dirname(filepath) 获取文件名:path.basename(filepath) 获取扩展名:path.extname(filepath) 获取所在路径 例子如下: var path = re

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

    方法说明: 返回path路径文件扩展名,如果path以 '.' 为结尾,将返回 '.',如果无扩展名 又 不以'.'结尾,将返回空值. 语法: 复制代码 代码如下: path.extname(p) 由于该方法属于path模块,使用前需要引入path模块(var path= require("path") ) 接收参数: p       path路径 例子: 复制代码 代码如下: path.extname('index.html') // returns '.html' path.ext

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

    方法说明: 将特定文字分隔符 '\\' 或 '/' 的字符串转换成数组对象. 语法: 复制代码 代码如下: path.sep 由于该方法属于path模块,使用前需要引入path模块(var path= require("path") ) 接收参数: 无 例子: 复制代码 代码如下: *nix 系统下的例子: 'foo/bar/baz'.split(path.sep) // returns ['foo', 'bar', 'baz']   windows 系统下的例子 'foo\\bar\

  • node.js中的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('

随机推荐