深入挖掘Javascript数组的特定索引

深入挖掘Javascript数组的特定索引,javascript,Javascript,Javascript新手,很难理解某些数据操作 我正在将一些数据从一个从PHP到JS的变量中提取出来,但我不知道这是如何索引的!非常感谢您的帮助 $heretimePh1 = "{rate:958.741566}, {rate:958.741566}, {rate:958.741566}, {rate:958.741566}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528},

Javascript新手,很难理解某些数据操作

我正在将一些数据从一个从PHP到JS的变量中提取出来,但我不知道这是如何索引的!非常感谢您的帮助

$heretimePh1 = "{rate:958.741566}, {rate:958.741566}, {rate:958.741566}, {rate:958.741566}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528}, {rate:5000}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528}, {rate:7669.932528}, {rate:7465.172304}, "
下面是我尝试为第一个值958.741566创建var的代码

var a = <?php echo $heretimePh1; ?>;
var b = a['rate'];
var c = b[0];

但这似乎根本不起作用,任何指向正确方向的指针都很受欢迎,不确定我遗漏了什么,因为大多数文档似乎都是通常的[]

为了解决这个问题,来自PHP变量$heretimePh1的数据是一个字符串,尽管它有多个值,从一个使用PHP gettype的mysql查询中得到的显示它不是数组,而是字符串。使用PHP函数explode$heretimePh1;我能够得到我想要的信息。

$heretimePh1不是JSON。对该字符串进行编码只会产生另一个字符串;字符串没有rate属性。您甚至没有尝试在JavaScript端解析任何内容。数据是否来自某个特定的地方?如果是这样,请尝试将其设置为有效的JSON。如果它是一个硬编码字符串,请将其重写为有效的JSON。是的,我可能对此有点不知所措,我只是在使用echo$heretimePh1时遇到了问题,似乎,我也将其更新回echo,仍然没有任何运气$heretimePh1只是一个大字符串?我想这就是我一直在踢屁股的地方对不起,忽略我评论中说“编码那个字符串只会导致另一个字符串”和“试图解析”的部分;不知道我在想什么。当然,您仍然需要json_encode,否则您将在JS中得到一个不带引号的字符串,这将导致无效语法。但是,json_encode$heretimePh1需要生成具有预期结构的json。在这种情况下,$heretimePh1理想情况下需要定义为[[“速率”=>958.741566],“速率”=>958.741566],…]。但如何做到这一点取决于数据来自何处。感谢所有这些信息,@SebastianSimon。数据来自一个通过PHP的mysql查询,“rate”是我自己的措辞,在我看来是关键,而值是从查询中提取的数据,我试图不把它当作dict,因为它似乎是一个dict,但这就是为什么我试图缩小var B中的“rate”的范围,有了一些python知识,没有太多的JS,这就是我努力理解的地方,或者如何拆分这个数组(如果是这样的话),然后遍历它[0]、[1]、[2],等等。