简体   繁体   English

在使用For循环JS中分配变量

[英]Assign Variable in Using For Loop JS

I am trying to learn how to use for loop to create and assign variables. 我正在尝试学习如何使用for循环创建和分配变量。 I have a list of items gathered using: 我有一个使用以下命令收集的项目列表:

document.getElementsByClassName("category-item-link")

it returns: 它返回:

[a.category-item-link, a.category-item-link, a.category-item-link, a.category-item-link, a.category-item-link, a.category-item-link]

My goal is to assign each item to a variable called link[0] - link[5] using for loop. 我的目标是使用for循环将每个项目分配给一个名为link [0]-link [5]的变量。

Since it already returns a collection of elements, you can just do this (I converted link into an array so you can see just the elements): 由于它已经返回了元素的集合,因此您可以执行此操作(我将link转换为数组,因此您只能看到元素):

 var link = [...document.getElementsByClassName("category-item-link")]; console.log(link); 
 <a class="category-item-link">Link</a> <a class="category-item-link">Link</a> <a class="category-item-link">Link</a> <a class="category-item-link">Link</a> <a class="category-item-link">Link</a> <a class="category-item-link">Link</a> 

getElementsByClassName returns an object with the collection of elements. getElementsByClassName返回带有元素集合的对象。 So you can already access each item to a variable called link[0] - link[5] by this: 因此,您已经可以通过以下方式将每个项目访问名为link [0]-link [5]的变量:

const link = document.getElementsByClassName("category-item-link")

However, for practicing for loop, you may do this: 但是,对于练习循环,您可以这样做:

const objs = document.getElementsByClassName("category-item-link")
const link = []

for (let i = 0; i < objs.length; i++) {
    link[i] = objs[i]
}

or like this: 或像这样:

const objs = document.getElementsByClassName("category-item-link")
const link = []

for (const obj of objs) {
    link.push(obj)
}

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

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