Validaciones JS
Cuando se trata de manipular datos o información para ser insertada o trabajarla en alguna lógica de negocios, siempre tenemos que garantizar la persistencia de la información que llega. Por eso te traigo estos tips que te van a permitir tener un mejor control de los datos. En este post, aprenderemos a validar dos tipos de datos, Object y Array.
Validando Arrays
Cuando se espera un tipo de dato que es un array, no podemos ir directamente a recorrerlo u obtener las propiedades mediante el índice, ya que si el tipo de dato no es un array, puede ocasionar un error en tiempo de ejecución, por ende tenemos que validar que el tipo de dato recibido sea el correcto, mediante estas propiedades que nos proporciona javascript.
isArray(): Esta función nos regresa un booleano; true en caso de que el dato sea un array y false cuando no.
let lstPhones = ['9523635781', '555136974']
Array.isArray(lstPhones)
Otra de las otras propiedades que debemos validar para garantizar que el array tenga items para recorrer es la siguiente
length: Esta propiedad nos regresa la logitud o tamaño del array.
lastPhones.length
Tomando en cuenta estas dos propiedades, tenemos que validar que el dato sea de tipo array (arreglo) y que tenga items disponibles antes de que entre a la lógica de negocios correspondiente:
let lstPhones = [“9999635782”, 9999245638]
if(Array.isArray(lstPhones) && lstPhones.length > 0) {
//Write your logic here
}else{
//Write your message here
}
Validando Objetos
Cuando se trata de trabajar con objetos o en su defecto JSON de tipo object, no estamos exentos de validar la información.
Por eso te presentamos estas propiedades para validar tus objetos.
typeof: Es una propiedad que nos regresa el tipo de dato.
let obj = {'name': 'pjgt'}
typeof obj
Esta línea de código nos regresara qué tipo de dato es en en un string; para este caso regresará “object”, en la cual con esta propiedad podemos validar de la siguiente forma:
if(typeof obj === 'object'){
console.log(“es un objeto”)
}
La siguiente propiedad es object.keys(), esto nos va a regresar todos los key del objeto, con el objetivo de verificar que el objeto no venga null o indefinido. Para cuestiones de validación simplemente lo vamos a usar de la siguiente manera:
if(object.keys(obj) ){
//write code
}
Otra propiedad que nos va a ayudar para validar nuestro objeto es hasownproperty, que nos va a regresar un booleano si existe o no la propiedad que esperamos tener.
let data = obj.hasownproperty(“name”)
Para este ejemplo, nos regresara un true en la cual ya podríamos verificar que tiene esa propiedad.
Conclusión
Cuando esperemos información del lado del cliente, siempre tenemos que tener conciencia en validar todo del lado del backend, ya que no basta validar información de lado del front-end. Con estos tips, tendrás más seguridad y persistencia en tus datos y podrás garantizar el correcto funcionamiento del tu sistema.