¿Qué significa [objeto Objeto]?
Estoy intentando obtener alert
un valor devuelto por una función y aparece esto en la alerta:
[object Object]
Aquí está el código JavaScript:
<script type="text/javascript">
$(function ()
{
var $main = $('#main'),
$1 = $('#1'),
$2 = $('#2');
$2.hide(); // hide div#2 when the page is loaded
$main.click(function ()
{
$1.toggle();
$2.toggle();
});
$('#senddvd').click(function ()
{
alert('hello');
var a=whichIsVisible();
alert(whichIsVisible());
});
function whichIsVisible()
{
if (!$1.is(':hidden')) return $1;
if (!$2.is(':hidden')) return $2;
}
});
</script>
whichIsVisible
es la función que estoy tratando de verificar.
Como otros han señalado, esta es la serialización predeterminada de un objeto. Pero ¿por qué es así [object Object]
y no justo [object]
?
¡Eso se debe a que existen diferentes tipos de objetos en Javascript!
- Objetos de función :
stringify(function (){})
->[object Function]
- Objetos de matriz :
stringify([])
->[object Array]
- Objetos RegExp
stringify(/x/)
->[object RegExp]
- Objetos de fecha
stringify(new Date)
->[object Date]
- … varios más …
- y Objetos objetos !
stringify({})
->[object Object]
Esto se debe a que se llama a la función constructora Object
(con "O" mayúscula), y el término "objeto" (con "o" minúscula) se refiere a la naturaleza estructural de la cosa.
Por lo general, cuando se habla de "objetos" en Javascript, en realidad se refiere a " objetos Objeto ", y no a los otros tipos.
donde stringify
debería verse así:
function stringify (x) {
console.log(Object.prototype.toString.call(x));
}
La conversión predeterminada de un objeto a una cadena es "[object Object]"
.
Como trabaja con objetos jQuery, es posible que desee hacer
alert(whichIsVisible()[0].id);
para imprimir el ID del elemento.
Como se menciona en los comentarios, debes usar las herramientas incluidas en navegadores como Firefox o Chrome para introspeccionar objetos haciendo en console.log(whichIsVisible())
lugar de alert
.
Nota al margen : las identificaciones no deben comenzar con dígitos.
Puedes ver el valor dentro de [objeto Objeto] así
Alert.alert( JSON.stringify(userDate) );
Intenta así
realm.write(() => {
const userFormData = realm.create('User',{
user_email: value.username,
user_password: value.password,
});
});
const userDate = realm.objects('User').filtered('user_email == $0', value.username.toString(), );
Alert.alert( JSON.stringify(userDate) );
referencia
https://off.tokyo/blog/react-native-object-object/