Ramda.js es una biblioteca en JavaScript que se utiliza para jugar con arrays, strings, objetos, etc., pero de forma funcional. La función sin() en Ramda se usa para devolver la array con el conjunto particular de valores eliminado de ella. Funciona como filtro en javascript.
Sintaxis:
R.without(elementArray, array)
Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- elementArray: Es la array de elementos que se eliminarán de la array original.
- array: Es la array original que se dará como segundo parámetro.
Nota: Es necesario dar ambos parámetros.
Valor de retorno: el tipo de retorno de esta función es array.
Los siguientes ejemplos ilustran la función R.without() en Ramda.js.
Ejemplo 1:
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content= "width=device-width, initial-scale=1.0"> <title>NodeJS Ramda.replace() method</title> </head> <body> <!-- By linking this script "R" is attached as the global variable in the browser--> <script src= "//cdnjs.cloudflare.com/ajax/libs/ramda/0.25.0/ramda.min.js"> </script> <script> let elementArray = ["a", "b"]; let array = ["a", "a", "b", "c", "d"] // Applying R.without function const newArray = R.without(elementArray, array); console.log(newArray) </script> </body> </html>
Producción:
Ejemplo 2: cuando se proporciona una array de objetos y la array se filtra por la array de objetos.
Javascript
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content= "width=device-width, initial-scale=1.0"> <title>NodeJS Ramda.replace() function</title> </head> <body> <!-- By linking this script "R" is attached as the global variable in the browser--> <script src= "//cdnjs.cloudflare.com/ajax/libs/ramda/0.25.0/ramda.min.js"> </script> <script> let elementArray = [{ "a": 1 }, "b"]; // Array of objects let array = [{ "a": 1, "b": 2 }, { "a": 1 }, "c", 4, 5] // Filtering array const newArray = R.without(elementArray, array); console.log(newArray) </script> </body> </html>
Producción:
Nota: importe estos archivos adicionales por CDN:
“<secuencia de comandos src=”//cdnjs.cloudflare.com/ajax/libs/ramda/0.25.0/ramda.min.js”></secuencia de comandos>”
Estos comandos no funcionarán directamente en la consola de Chrome ni en ningún navegador sin estos archivos adicionales.