js juzga si una cadena es una cadena json

Durante nuestro desarrollo, podemos encontrar que algunos de los valores devueltos por el backend son cadenas json y otros no, por lo que informaremos errores durante el procesamiento o las operaciones lógicas.

 Entonces, necesitamos convertir todos los formatos json en cadenas ordinarias.

Aquí he encapsulado un método, puedes copiarlo directamente y usarlo:

1. A través de la modularización, este método se encapsula por separado y se puede hacer referencia en la página requerida.

// 判断的是否是JSON字符串
export const type=(str)=>{
	if (typeof str == 'string') {
	      try {
	        var obj = JSON.parse(str);
			// 等于这个条件说明就是JSON字符串 会返回true
	        if (typeof obj == 'object' && obj) {
	          return true;
	        } else {
				//不是就返回false
	          return false;
	        }
	      } catch (e) {
	        return false;
	      }
	    }
	    return false;
}

2. ¡Importa a través de import {type} desde "la ruta del archivo donde almacenas el método" !

3. Opere en la lógica js para convertirlo al formato:

// 转换json格式
//如果是json格式 type(放入要检测的值) 会返回true 才会进入if里里面
if (type(val.value)) {
// console.log('json');
//确认是json格式后 我们进行转换 使用JSON.parse()
val.value = JSON.parse(val.value)
}

4. ¡Al final, nuestro valor se convertirá en una cadena que se puede usar normalmente sin operaciones adicionales!

Es mejor sugerir que intente comunicarse con el backend para determinar el formato devuelto, de modo que no tenga que hacerlo usted mismo.

La operación final no es fácil, cargue la fuente para su manejo, ¡gracias a todos!

Supongo que te gusta

Origin blog.csdn.net/m0_71231013/article/details/129042795
Recomendado
Clasificación