values recorrer property objetos objeto eliminar elemento crear buscar array agregar javascript object

javascript - recorrer - object.values typescript



¿Imprimir contenido de objeto JavaScript? (15)

Además de usar un depurador, también puede acceder a todos los elementos de un objeto utilizando un bucle foreach . La siguiente función printObject debería alert() su objeto mostrando todas las propiedades y valores respectivos.

function printObject(o) { var out = ''''; for (var p in o) { out += p + '': '' + o[p] + ''/n''; } alert(out); } // now test it: var myObject = {''something'': 1, ''other thing'': 2}; printObject(myObject);

Es preferible utilizar una herramienta de inspección DOM porque le permite cavar bajo las propiedades que son objetos en sí. Firefox tiene FireBug, pero todos los demás navegadores principales (IE, Chrome, Safari) también tienen herramientas de depuración integradas que debe comprobar.

Esta pregunta ya tiene una respuesta aquí:

Típicamente si solo usamos alert(object); se mostrará como [object Object] . ¿Cómo imprimir todos los parámetros de contenido de un objeto en JavaScript?


Deberías considerar usar FireBug para la depuración de JavaScript. Le permitirá inspeccionar interactivamente todas sus variables, e incluso pasar por las funciones.


Esto te dará una salida muy agradable con el objeto JSON con sangría:

alert(JSON.stringify(YOUR_OBJECT_HERE, null, 4));

El segundo argumento altera el contenido de la cadena antes de devolverla. El tercer argumento especifica cuántos espacios se deben usar como espacios en blanco para facilitar la lectura.


Función simple para alertar el contenido de un objeto o una matriz.
Llame a esta función con una matriz o cadena o un objeto que alerta los contenidos.

Función

function print_r(printthis, returnoutput) { var output = ''''; if($.isArray(printthis) || typeof(printthis) == ''object'') { for(var i in printthis) { output += i + '' : '' + print_r(printthis[i], true) + ''/n''; } }else { output += printthis; } if(returnoutput && returnoutput == true) { return output; }else { alert(output); } }

Uso

var data = [1, 2, 3, 4]; print_r(data);


Imprimir el contenido del objeto que puede utilizar

console.log(obj_str);

Puedes ver el resultado en la consola como abajo.

Object {description: "test"}

Para la consola abierta, presione F12 en el navegador Chrome, encontrará la pestaña de la consola en el modo de depuración.



Javascript para todos!

String.prototype.repeat = function(num) { if (num < 0) { return ''''; } else { return new Array(num + 1).join(this); } }; function is_defined(x) { return typeof x !== ''undefined''; } function is_object(x) { return Object.prototype.toString.call(x) === "[object Object]"; } function is_array(x) { return Object.prototype.toString.call(x) === "[object Array]"; } /** * Main. */ function xlog(v, label) { var tab = 0; var rt = function() { return '' ''.repeat(tab); }; // Log Fn var lg = function(x) { // Limit if (tab > 10) return ''[...]''; var r = ''''; if (!is_defined(x)) { r = ''[VAR: UNDEFINED]''; } else if (x === '''') { r = ''[VAR: EMPTY STRING]''; } else if (is_array(x)) { r = ''[/n''; tab++; for (var k in x) { r += rt() + k + '' : '' + lg(x[k]) + '',/n''; } tab--; r += rt() + '']''; } else if (is_object(x)) { r = ''{/n''; tab++; for (var k in x) { r += rt() + k + '' : '' + lg(x[k]) + '',/n''; } tab--; r += rt() + ''}''; } else { r = x; } return r; }; // Space document.write(''/n/n''); // Log document.write(''< '' + (is_defined(label) ? (label + '' '') : '''') + Object.prototype.toString.call(v) + '' >/n'' + lg(v)); }; // Demo // var o = { ''aaa'' : 123, ''bbb'' : ''zzzz'', ''o'' : { ''obj1'' : ''val1'', ''obj2'' : ''val2'', ''obj3'' : [1, 3, 5, 6], ''obj4'' : { ''a'' : ''aaaa'', ''b'' : null } }, ''a'' : [ ''asd'', 123, false, true ], ''func'' : function() { alert(''test''); }, ''fff'' : false, ''t'' : true, ''nnn'' : null }; xlog(o, ''Object''); // With label xlog(o); // Without label xlog([''asd'', ''bbb'', 123, true], ''ARRAY Title!''); var no_definido; xlog(no_definido, ''Undefined!''); xlog(true); xlog('''', ''Empty String'');


Me enfrenté a un problema similar, la razón fue que utilizo ajax para obtener datos. En este caso había realizado dos llamadas ajax asíncronas. En uno acabo de devolver el mensaje de cadena y mostrar en alerta. En la segunda llamada ajax, busco el arraylist en formato json y lo decodifico en js. Así que mi segunda solicitud se utiliza para procesar primero y estaba recibiendo alerta de objeto.

Así que sólo compruebe. 1. alerta debe contener cadena. 2. Si obtienes arrayList o cualquier otro Objeto, descifra.

¡Todo lo mejor!


Podrías util.inspect(object) Node para imprimir la estructura del objeto.

Es especialmente útil cuando su objeto tiene dependencias circulares, por ejemplo,

$ node var obj = { "name" : "John", "surname" : "Doe" } obj.self_ref = obj; util = require("util"); var obj_str = util.inspect(obj); console.log(obj_str); // prints { name: ''John'', surname: ''Doe'', self_ref: [Circular] }

En ese caso, JSON.stringify lanza la excepción: TypeError: Converting circular structure to JSON


Puede dar a sus objetos sus propios métodos de toString en sus prototipos.



Si está utilizando Firefox, la alert(object.toSource()) debería ser suficiente para propósitos de depuración simples.


Si solo desea tener una representación de cadena de un objeto, puede usar la función JSON.stringify , utilizando una biblioteca JSON .



Utilice dir (objeto). O siempre puedes descargar FireBug (realmente útil).