我有一个名为myInfo的对象
var myInfo = {
skills: ['PHP', 'Java', 'JavaScript', 'HTML', 'CSS', 'jQuery'],
languages: ['English', 'German']
}
我想循环遍历skills
对象内myInfo
数组内的字符串。我试过这个但似乎不起作用
var mySkills = '';
for (i=0, i < myInfo.skills.length, i++) {
mySkills += 'li' + myInfo.skills + 'li';
}
document.write(mySkills);
任何帮助将不胜感激。也许我在代码的某个地方出了问题。
答案 0 :(得分:2)
我会编写一个创建li
:
function li(content) {
const elt = document.createElement('li');
elt.innerHTML = content;
return elt;
}
现在,创建一个文档片段,根据数组将所有li
放入其中:
function makeLis(contents) {
const frag = document.createDocumentFragment();
contents.forEach(content => frag.appendChild(li(content));
return frag;
}
编写一个函数来创建ul
元素以将li
放入:
function makeUl(contents) {
const ul = document.createElement('ul');
ul.appendChild(makeLis(contents));
return ul;
}
现在您可以将其写入您的文档:
document.getElementById('target').appendChild(makeUl(contents));
答案 1 :(得分:1)
通过索引获取技能值
0
答案 2 :(得分:1)
您可以通过index []访问Object Array中的单个对象。 对象基于0索引。
skills: ['PHP', 'Java', 'JavaScript', 'HTML', 'CSS', 'jQuery'],
PHP是对象数组的开始,位于0
mySkills += '<li>' + myInfo.skills[i] + '</li>';
每次传递 i
都会递增,直到
for(i=0; i < myInfo.skills.length, i++) {
i
大于数组的length
,0,1,2,3,4,5。
初始化变量时需要使用分号。
答案 3 :(得分:0)
除非您需要访问索引,否则可以使用for.. of
var myInfo = {
skills: ['PHP', 'Java', 'JavaScript', 'HTML', 'CSS', 'jQuery'],
languages: ['English', 'German']
}
for (let skill of myInfo.skills)
{
console.log(skill);
}
&#13;
如果您确实需要访问索引并且不想写长i=0; i < length; i++
,则可以使用for... in
代替
var myInfo = {
skills: ['PHP', 'Java', 'JavaScript', 'HTML', 'CSS', 'jQuery'],
languages: ['English', 'German']
}
for (let index in myInfo.skills)
{
console.log(myInfo.skills[index], "at index", index);
}
&#13;