在JavaScript Array的索引中保留多个值

时间:2016-07-20 14:36:24

标签: javascript arrays associative-array

我想保留下面的值

var skus = [];    
<?php
    foreach($col as $Product)
        {
            ?>
                <script type="text/javascript"> 
                    skus['<?php echo $Product->id; ?>'] = '<?php echo $Product->sku; ?>','<?php echo $Product->color; ?>';
                </script>
            <?php
        }
    ?>

但这不起作用。

更新

稍后我想使用该索引搜索数组 skus 的值。是否可以在JavaScript中使用,如下所示?

var my_array = [];
my_arry['abc'] = 'pqr','xyz';

是否可以在JavaScript中的数组索引中存储多个值? 感谢

3 个答案:

答案 0 :(得分:1)

看起来您的代码问题是JS中的拼写错误。我假设你想用JS中的PHP值创建一个数组,所以你看起来就像你的值列表中的方括号一样。

像这样: skus['<?php echo $Product->id; ?>'] = ['<?php echo $Product->sku; ?>','<?php echo $Product->color; ?>'];

答案 1 :(得分:0)

您可以使用一些对象:

所以:

skus['<?php echo $Product->id; ?>'] = {'sku':'<?php echo $Product->sku; ?>','color':'<?php echo $Product->color; ?>'};

因此skus数组的每个元素都是一个带有两个键的对象

答案 2 :(得分:0)

我的PHP有点生疏,但这是你的意思吗?

<script type="text/javascript">
    var skus = [];
    <?php foreach($col as $Product) { ?>
        skus['<?php echo $Product->id; ?>'] = ['<?php echo $Product->sku; ?>','<?php echo $Product->color; ?>'];
    <?php } ?>
</script>

你需要在那条中间线上使用[],因为你正试图将两个值保存到每个&#34; cell&#34;数组,对吗?