/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ "use strict";
/** * Take any number of parameters and returns a space-concatenated string. * If a parameter is a non-empty string, it's automatically added to the result. * If a parameter is an object, for each entry, if the value is truthy, then the key * is added to the result. * * For example: `classnames("hi", null, undefined, false, { foo: true, bar: false })` will * return `"hi foo"` * * * @param {...string|object} argss * @returns String
*/
module.exports = function (...args) {
let className = "";
for (const arg of args) { if (!arg) { continue;
}
if (typeof arg == "string") {
className += " " + arg;
} elseif (Object(arg) === arg) { // We don't test that we have an Object literal, so we can be as fast as we can for (const key in arg) { if (arg[key]) {
className += " " + key;
}
}
}
}
return className.trim();
};
¤ Dauer der Verarbeitung: 0.1 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.