что означает [object Object]?
Я пытаюсь предупредить возвращаемое значение из функции, и я получаю это в alert
[object Object]
вот код javascript
<script type="text/javascript">
$(function ()
{
var $main = $('#main'),
= $('#1'),
= $('#2');
.hide(); // hide div#2 when the page is loaded
$main.click(function ()
{
.toggle();
.toggle();
});
$('#senddvd').click(function ()
{
alert('hello');
var a=whichIsVisible();
alert(whichIsVisible());
});
function whichIsVisible()
{
if (!.is(':hidden')) return ;
if (!.is(':hidden')) return ;
}
});
</script>
whichIsVisible-это функция, которую я пытаюсь проверить на
7 ответов:
преобразование объекта в строку по умолчанию
"[object Object]".как вы имеете дело с объектами jQuery, вы можете сделать
alert(whichIsVisible()[0].id);для печати идентификатора элемента.
как уже упоминалось в комментариях, вы должны использовать дополнительные инструменты, такие как Firebug для Firefox, чтобы интроспектировать объекты, делая
console.log(whichIsVisible())вместоalert(нет необходимости в дополнительных инструментах в Chrome или Safari).Примечание: идентификаторы не должны начинаться с десятичные знаки.
как отмечали другие, это сериализация объекта по умолчанию. Но почему это
[object Object]и не только[object]?это потому, что существуют различные типы объектов в Javascript!
- объекты функции:
stringify(function (){})->[object Function]- объекты Array:
stringify([])->[object Array]- объекты регулярных выражений
stringify(/x/)->[object RegExp]- дата объекты
stringify(new Date)->[object Date]- ...несколько...
- и объект!
stringify({})->[object Object]это потому, что функция-конструктор вызывается
Object(С большой буквы "О"), а термин "объект" (с маленькой буквы "О") относится к структурной природе вещи.обычно, когда вы говорите об" объектах " в Javascript, вы на самом деле значит"объект", а не другие типы.
здесь
stringifyдолжен выглядеть так:function stringify (x) { console.log(Object.prototype.toString.call(x)); }
[object Object]является по умолчанию toString представление объекта в javascript.Если вы хотите знать свойства вашего объекта, просто foreach над ним, как это:
for(var property in obj) { alert(property + "=" + obj[property]); }в вашем конкретном случае, вы получаете объект jQuery. Попробуйте сделать это вместо:
$('#senddvd').click(function () { alert('hello'); var a=whichIsVisible(); alert(whichIsVisible().attr("id")); });это должно предупредить идентификатор видимого элемента.
это значение, возвращаемое этим объектом
toString()
[object Object]является строковым представлением JavaScript по умолчаниюObject. Это то, что вы получите, если вы запустите этот код:alert({}); // [object Object]вы можете изменить представление по умолчанию, переопределяя
toStringметод вот так:var o = {toString: function(){ return "foo" }}; alert(o); // foo
у вас есть объект JavaScript
иявляются объектами jquery, возможно использоватьalert(.text());чтобы получить текст илиalert(.attr('id');etc...вы должны относиться к
икак объекты jQuery.
Вы можете увидеть значения внутри [Object объект], как это
Alert.alert( JSON.stringify(userDate) );попробуйте вот так
realm.write(() => { const userFormData = realm.create('User',{ user_email: value.username, user_password: value.password, }); }); const userDate = realm.objects('User').filtered('user_email == ', value.username.toString(), ); Alert.alert( JSON.stringify(userDate) );ссылка