Подтвердить что ты не робот

Как я могу просмотреть объект с предупреждением()

Я попытался сделать отладку, но у меня проблемы. Теперь я попробую с alert(). Например, я хочу увидеть значение:

var product = { ProductName: $('!Answer_Response[0]').val(),
                  UnitPrice: $('#Price').val(),
                  Stock: $('#Stock').val()
              };

Когда я говорю alert(product), он просто дает мне [object Object]. Как я могу предупредить, что на самом деле там?

4b9b3361

Ответ 1

вы можете использовать метод JSON.stringify(), найденный в современных браузерах и предоставляемый json2.js.

var myObj = {"myProp":"Hello"};
alert (JSON.stringify(myObj));    // alerts {"myProp":"Hello"};

или

также проверьте эту библиотеку: http://devpro.it/JSON/files/JSON-js.html

Ответ 2

вы можете использовать метод toSource, подобный этому

alert(product.toSource());

Ответ 3

Если вы хотите легко просмотреть содержимое объектов во время отладки, установите инструмент, например Firebug и используйте console.log:

console.log(product);

Если вы хотите просмотреть свойства самого объекта, не alert объект, а его свойства:

alert(product.ProductName);
alert(product.UnitPrice);
// etc... (or combine them)

Как сказано, , если вы действительно хотите повысить свою отладку JavaScript, используйте Firefox с аддоном Firebug. Вам будет интересно, как вы когда-либо отлаживали ваш код раньше.

Ответ 4

Это то, что я использую:

var result = [];
for (var l in someObject){
  if (someObject.hasOwnProperty(l){
    result.push(l+': '+someObject[l]);
  }
}
alert(result.join('\n'));

Если вы хотите также отображать вложенные объекты, вы можете использовать что-то рекурсивное:

function alertObject(obj){
 var result = [];
 function traverse(obj){
 for (var l in obj){
   if (obj.hasOwnProperty(l)){
     if (obj[l] instanceof Object){
       result.push(l+'=>[object]');
       traverse(obj[l]);
     } else {
       result.push(l+': '+obj[l]);
     }
   }
  }
 }
 traverse(obj);
 return result;
}

Ответ 5

Вам действительно нужно использовать Firebug или консоль Webkit для отладки. Затем вы можете просто сделать console.debug(product); и изучить объект.

Ответ 6

alert (product.UnitName + " " + product.UnitPrice + " " + product.Stock)

либо создайте метод toString() для вашего объекта и вызовите

alert(product.toString())

Но я должен согласиться с другими плакатами - если это отладка, вы собираетесь использовать firebug или F12 на IE9 или chrome, а с помощью console.log - путь

Ответ 7

В зависимости от того, какое свойство вы заинтересованы:

alert(product.ProductName);
alert(product.UnitPrice);
alert(product.Stock);

Ответ 8

alert( JSON.stringify(product) );

Ответ 9

Использовать собственный JSON.stringify метод Javascript. Чтобы визуализировать его лучше, вы можете использовать, например: JSON.stringify(obj,null, 4)

var obj = {data:[{"empmenuid":"1","empid":null,"deptid":"66","aliasid":"66","firstname":"66","lastname":"66","sin":"66","status":"66","empclass":"66","hiredate":"66","seneoritydate":"66","separationdate":"66"},{"empmenuid":"3","empid":null,"deptid":"12","aliasid":"12","firstname":"12","lastname":"12","sin":"12","status":"12","empclass":"12","hiredate":"12","seneoritydate":"12","separationdate":"12","recalldate":"12","martialstatus":"12","gender":"12","pager":"12","locid":"12","jobtitle":"12","jobtitlestart":"12","fullpart":"12","manager":"12","managername":"12","middlename":"12","nickname":"12","paytype":"12","payfreq":"12"}],
recordType : 'object'};

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

Ответ 10

Попробуй это:

alert(JSON.parse(product) );