Node.js util.formatWithOptions() Método

El método util.formatWithOptions() (agregado en v10.0.0) es una interfaz de programación de aplicaciones incorporada del módulo util que es como una string de formato printf y devuelve una string formateada usando el primer argumento. Es algo idéntico al método util.format() , la excepción en este método es que toma un argumento adicional, es decir , inspectOptions que especifica opciones que se pasan al método util.inspect()
La string con formato contiene cero o más especificadores de formato en los que el valor del argumento correspondiente se convierte y reemplaza. Se utiliza como una herramienta de depuración es un método síncrono. 

Sintaxis:

util.formatWithOptions(inspectOptions, format[, ...args])

Para usar esta función tenemos que importar el módulo util:

const util=require("util");   

Parámetros: este método acepta tres parámetros, como se mencionó anteriormente y se describe a continuación:

  • inspectOptions < object > : Acepta las funciones, objetos, callbacks, datos en formato JSON, etc.
  • formato < string > : consiste en especificadores de tipo <string>, que es como una string de formato printf .
  • args < string > : Acepta la lista de tipo < string > o arreglo de argumentos.

Valor devuelto < string > : Devuelve la string formateada de tipo < string >.

Ejemplo 1: Nombre de archivo: index.js

javascript

// Node.js to demonstrate the
// util.formatWithOptions() method
 
// Import the util module
const util = require('util');
 
function fun1() {
 
    // Returns: See object: {alfa:42}
    var val0 = util.formatWithOptions(
        { depth:0, colors: true },
        'See object %O', { alfa: 42 });
     
    // Returns: 'abc:%s'
    var val1 = util.formatWithOptions(
        { colors: true, showProxy : true },
        '%s:%s:%s', 'abc');
 
    // Returns: 'abc:def ghi'
    var val2 = util.formatWithOptions(
        { showHidden: true, colors: true },
        '%s:%s', 'abc', 'def', 'ghi', 'jkl');
 
    // Returns: '10 20 30'
    var val3 = util.formatWithOptions(
        { breakLength: 80, colors: true },
        10, 20, 30);
 
    // Returns: '% : 567'
    var val5 = util.formatWithOptions(
        { compact: true }, '%% : %s', 567);
      
    // Printing all values
    console.log(val0, '\n', val1, '\n',
        val2, '\n', val3, '\n', val5);
}
 
// Function call
fun1();

Producción:

See object { alfa: 42 } 
abc:%s:%s 
abc:def ghi jkl        
10 20 30 
% : 567

Ejemplo 2: Nombre de archivo: index.js

javascript

// Node.js program to demonstrate the
// util.formatWithOptions() method
 
// Import the util module
const util = require('util');
 
// Passing multiple values and
// -0 on string specifier
console.log("1 => ", util.formatWithOptions(
    { colors: true },
    '%%: %s', 'alfa', 'beta', -0));
 
// Passing multiple values
console.log("2 => ", util.formatWithOptions(
    { colors: true },
    '%%', 'alfa', 'beta', 'gamma'));
 
// Passing bigInt to string specifier
console.log("3 => ", util.formatWithOptions(
    { colors: true }, '%s',
    'alfa', 94321321321223372036854775807));
 
// Creating and passing Object along
// with null prototype and a variable
console.log("4 => ", util.formatWithOptions(
    {
        showHidden: false, depth: 0,
        colors: true
    }, '%s', 'alfa', Object.create(null,
    { [Symbol.toStringTag]: { value: 'beta' } })));
 
// Passing string to Number specifier
console.log("5 => ", util.formatWithOptions(
    { colors: true }, '%d', 'alfa',
    94303685));
 
// Passing Symbol and Number to parseInt specifier
console.log("6 => ", util.formatWithOptions(
    { showHidden: false, colors: true },
    '%i', '2020 year 2021, ', 'He was 40, ',
    '10.33, ', '10, ', 10));
 
// Passing string and Numbers to
// parseFloat specifier
console.log("7 => ", util.formatWithOptions(
    { colors: true }, '%f',
    '94321321321.564000 year 6546',
    'alfa', 78987965465464));
 
// Passing JSON string and Number
// to JSON specifier
console.log("8 => ", util.formatWithOptions(
    { depth: 0, colors: true }, '%j',
    '{ "name":"Chotu Mishra", "age":23, "city":"Kanpur" }',
    'alfa', 78987965465464));
 
// Passing class, string, and Number
// to object specifier
console.log("9 => ", util.formatWithOptions(
    { colors: true }, '%o',
    class Bar { }, 'alfa', 78987965465464));
 
// Passing class, string, and Number
// to Object specifier
console.log("10 => ", util.formatWithOptions(
    { depth: 0, colors: true }, '%o:%d',
    class Foo { get [Symbol.toStringTag]()
        { return 'alfa'; } }, 'alfa',
    78987965465464));

Ejecute el archivo index.js con el siguiente comando:

node index.js

Producción:

1 =>  %: alfa beta -0
2 =>  % alfa beta gamma
3 =>  alfa 9.432132132122338e+28
4 =>  alfa [Object: null prototype] [beta] {}
5 =>  NaN 94303685
6 =>  2020 He was 40,  10.33,  10,  10
7 =>  94321321321.564 alfa 78987965465464
8 =>  "{ \"name\":\"Chotu Mishra\", \"age\":23, 
      \"city\":\"Kanpur\" }" alfa 78987965465464
9 =>  [Function: Bar] {
  [length]: 0,
  [prototype]: Bar { [constructor]: [Circular] },
  [name]: 'Bar'
} alfa 78987965465464
10 =>  [Function: Foo] {
  [length]: 0,
  [prototype]: Foo {
    [constructor]: [Circular],
    [Symbol(Symbol.toStringTag)]: [Getter]
  },
  [name]: 'Foo'
}:NaN 78987965465464

Referencia: https://nodejs.org/api/util.html#util_util_formatwithoptions_inspectoptions_format_args

Publicación traducida automáticamente

Artículo escrito por amitkumarjee y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *