Descripción del método:
Salir una cadena de ruta en formato canónico.
gramática:
La copia del código es la siguiente:
ruta. Normalizar (P)
Dado que este método pertenece al módulo de ruta, debe introducir el módulo de ruta antes de usar (Var Path = requirir ("ruta")))
ejemplo:
La copia del código es la siguiente:
Path.normalize ('/foo/bar // baz/asdf/quux/..')
// Devuelve
'/foo/bar/baz/asdf'
Código fuente:
La copia del código es la siguiente:
// versión de Windows
exports.normaly = function (ruta) {
resultado var = splitDevICere.exec (ruta),
dispositivo = resultado [1] || '',
iSunc = dispositivo && Device.charat (1)! == ':',
isabsolute = exports.isabsolute (ruta),
cola = resultado [3],
trailingslash = /fice////font>/.test(tail);
// Si el dispositivo es una letra de unidad, nos normalizaremos a minúsculas.
if (dispositivo && dispositivo.charat (1) === ':') {
dispositivo = dispositivo [0] .tolowercase () + dispositivo.substr (1);
}
// Normalizar la ruta de la cola
Tail = Normalizearray (tail.split (/[////]+/). Filtro (función (p) {
regresar !! p;
}) ,! Isabsolute) .Join ('//');
if (! Tail &&! Isabsolute) {
cola = '.';
}
if (tail && trailingslash) {
cola += '//';
}
// Convierta las cortes en barras trastas cuando el 'dispositivo' apunta a una raíz UNC.
// también aplasta múltiples cortes en una sola cuando corresponda.
if (isunc) {
dispositivo = NormalizeUnStroot (dispositivo);
}
dispositivo de retorno + (isabsolute? '//': '') + cola;
};