JavaScript массивы и печать объектов - PullRequest
0 голосов
/ 20 ноября 2018

Я хочу создать и напечатать список из 20 предприятий.

Сервер допускает только HTML & JavaScript и никаких плагинов jQuery.

Мне нужно использовать массивы, чтобы добавить еще 20 предприятийж / минимальное кодирование.Было бы неплохо иметь код для простого добавления еще 20 предприятий.

Каждый массив должен печатать отдельный маркированный список / неупорядоченный список ("ul")

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Yellow Pages</h2>

<p id="businessID"></p>

<script>

// Business Object
Business = {
  "businessName",
  "businessType",
  "businessNumber",
}

// Constructor function for Business Object
function business( businessName, businessType, businessNumber ) {
    this.businessName = name,
    this.businessType = type,
    this.businessNumber = number,
}

// Create 3 Business Objects
var business1 = new business("businessName1", "businessType1", "businessNumber1");
var business2 = new business("businessName2", "businessType2", "businessNumber2");
var business3 = new business("businessName3", "businessType3", "businessNumber3");

// Arrays of Business Objects, (Hopefully)
var businessesArray = [

  {"businessName1", "businessType1", "businessNumber1"},
  {"businessName2", "businessType2", "businessNumber2"},
  {"businessName3", "businessType3", "businessNumber3"},
];

// Create Bulleted List & Print
var text = "<ul>";
for(i=0; i< businesses.length; i++){
  for(j=0; j< businesses[i].length; j++){
  text += "<li>" + businesses[i][j] + "</li>";
  }

text += "<BR>";
}
text += "</ul>";
document.getElementById("businessID").innerHTML = text;

</script>    
</body>
</html>

Попробуйте код здесь https://www.w3schools.com/html/tryit.asp?filename=tryhtml_default

Извините, я новичок.Пожалуйста, помогите более подробно: -)

Заранее благодарю за всю вашу помощь с моим самым первым вопросом!: -)

1 Ответ

0 голосов
/ 20 ноября 2018

Чтобы напечатать массив на основе заданной вами структуры, используйте два цикла (один для внутреннего массива, а другой для внешнего массива):

for (var i = 0; i < businesses.length; i++) {
  var ul = $("<ul/>");
  $('#list').append(ul);
  console.log((businesses[i]));
  for (var j = 0; j < businesses[i].length; j++) {
    var li = $("<li/>");
    li.text(businesses[i][j]);
    ul.append(li);
  }
}

Вот демонстрация Fiddle: https://jsfiddle.net/zephyr_hex/vqodf1xn/13/

...