简体   繁体   English

JavaScript对象数组与打印

[英]JavaScript Objects Arrays & Printing

I want to create & print a list of 20 businesses. 我想创建并打印20个企业的列表。

Server only allows for HTML & JavaScript and no jQuery plugins. 服务器仅允许HTML和JavaScript,无jQuery插件。

I need to use an Arrays to add 20 more Businesses w/ minimum coding. 我需要使用一个数组来添加20个带有最小编码的企业。 Would be nice to have a code for easily adding 20 more businesses. 拥有一个可以轻松添加更多企业的代码将是很好的。

Each array needs to print a separate bulleted list / Unordered List ( "ul") 每个阵列都需要打印一个单独的项目符号列表/无序列表(“ 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>

Try code here https://www.w3schools.com/html/tryit.asp?filename=tryhtml_default 在此处尝试代码https://www.w3schools.com/html/tryit.asp?filename=tryhtml_default

Sorry, I am a novice. 抱歉,我是新手。 Please help more in details :-) 请详细帮助:-)

Thank you in advance for all your help with my very first question! 预先感谢您对我的第一个问题的所有帮助! :-) :-)

To print the array based on the structure you've given, use two loops (one for the inner array and the other for the outer array): 要根据给定的结构打印数组,请使用两个循环(一个用于内部数组,另一个用于外部数组):

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);
  }
}

Here is a Fiddle demo: https://jsfiddle.net/zephyr_hex/vqodf1xn/13/ 这是一个Fiddle演示: https : //jsfiddle.net/zephyr_hex/vqodf1xn/13/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM