【发布时间】:2023-03-15 00:34:01
【问题描述】:
基本上我正在做的是尝试通过 HTML 解析创建我自己的蒸汽市场 JSON。
我目前的做法示例:
var url = 'http://steamcommunity.com/market/search?appid=730'
var itemDiv = $("<div></div>")
$.get(url).success(function(r){
data = $(r).find('stuff i need')
itemDiv.append(data)
})
现在说我想在 div 中查找项目的名称,我会这样做:
itemDiv.find('x').each(function(){
var name = $(this).find("y").text()
// console.log(name) [or do whatever is needed ect]
})
正如我之前提到的,我需要以以下格式返回基于该数据的对象:
var item = {name:"",price:0}
但是,价格之类的东西总是会发生变化的。
根据 div 中的数据,最终产品的外观如下:
var x = {name:"a",price:1}
var x2 = {name:"a2",price:2}
我该怎么做呢?我想也许我可以将数据存储在一个数组中,然后执行类似
的操作for(x in y){
return object
}
或类似的东西。
抱歉,这似乎是一个愚蠢的问题,我对 javascript 很陌生。
澄清:我试图弄清楚如何根据 div 内的数据返回多个对象。
【问题讨论】:
-
在一个数组中保存多个对象是正确的方法。但是你知道 return 语句会立即退出循环(和函数)。您可能应该澄清您的问题。你到底在找什么?
-
好吧,我还是不明白你在做什么。如果您将这些对象保存在数组中,则您拥有所需的所有数据。您打算对这些对象执行的任何操作都可以通过遍历此数组来完成。或者您是否试图将这些不同的对象保存到不同的变量中?如果有,为什么?
-
@satish 一个选项是将数据存储到一个数组中,我想知道是否还有其他方法可以做到这一点,如果有,它会是什么。我想我写这篇文章的时候没有明确这个问题,对不起。但是一旦我将数据放入数组中,我将如何基于它创建对象?假设我有两个数组,一个称为价格,一个称为名称。每个数组都有五个值,所以我需要以 item = {name:"",price:0} 的格式返回 5 个对象,这基本上就是我想要问的。
-
我根据您的评论发布了回复。这应该会为您提供所需的对象集合。
标签: javascript steam