main.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. var a = {
  2. name: "Ivan",
  3. surname: "Ivanov",
  4. }
  5. var b = {
  6. name: "Petr",
  7. surname: "Petrov",
  8. }
  9. var c = {
  10. name: "Alex",
  11. surname: "Sidarov",
  12. }
  13. a.age = 20;
  14. b.fathername = "Nikolai";
  15. c.sex = "male";
  16. var persons = [a,b,c,
  17. {
  18. name: "pasha",
  19. surname: "efimenko",
  20. age: 22
  21. }
  22. ]
  23. document.write("<table cellpadding = 5>");
  24. document.write("<tr>");
  25. for (var i = 0; i < persons.length - 2; i++) {
  26. var br;
  27. br = false;
  28. var key = Object.keys(persons[i]);
  29. for (var j = 0; j < persons.length; j++) {
  30. var keyy = Object.keys(persons[j]);
  31. if(key[i] !== keyy[i]) // Проверяю совпадает ли ключ объкта с ключами остальных, если нет то заголовок не выводится
  32. br = true;
  33. }
  34. if(br)
  35. document.write("<th></th>");
  36. else{
  37. document.write("<th></th>");
  38. $("th:nth-of-type(" + (i + 1) + ")").html(key[i]);
  39. }
  40. }
  41. document.write("</tr>");
  42. for (var i = 0; i < persons.length; i++) {
  43. var key = Object.keys(persons[i]);
  44. if(!(i % 2))
  45. document.write("<tr style = 'background: #ccc;'>");
  46. else
  47. document.write("<tr>");
  48. for (var c = 0; c < key.length; c++) {
  49. document.write("<td></td>");
  50. $("tr:nth-of-type("+ (i + 2) +") td:nth-of-type("+ (c + 1) +")").html(persons[i][key[c]]);
  51. }
  52. document.write("</tr>");
  53. }
  54. document.write("</table>");