javascript清理数组

时间:2012-01-24 00:28:17

标签: javascript jquery arrays

我有四个产品库,可以检查每个图库中每个产品的细节。每次用户输入任何产品的详细信息时,阵列都会填充该库中的所有产品。我应该告诉这是一页。

当用户退出详细视图时,我想完全删除数组中的所有记录,因为当用户再次在详细视图中输入时,数组长度会增加其大小。

我已经尝试了arrayName.length =0;arrayName.length = []并删除了以前的数据,但是他的尺寸继续增加如下:

加载第一次详情视图 - > arrayName中{VALA,值Valb,valC}

加载第二次详情视图 - > arrayName中{,,, VAL1,VAL2,VAL3}

第二次应该是什么:arrayName {val1,val2,val3}

我是如何解决这个问题的?

全部谢谢

解决方案

谢谢所有人。这是我的问题。

while($rowDetails = mysql_fetch_array($rsDetails)){
?>
        <script language="javascript">
            arrayProd[pos] = <?php echo $rowDetails['RefArticleID']; ?>;
            pos++;
        </script>
   ... 

将数组填充到while循环中,并递增pos。同时我重新初始化数组我强制pos为0(零)

arrayProd = [];
pos =0;

谢谢大家

3 个答案:

答案 0 :(得分:11)

这个很简单,只需重新初始化数组:

arrayName = [];

答案 1 :(得分:3)

您是否尝试通过将数组设置为空数组来重新初始化数组?

arrayName = [];

答案 2 :(得分:3)

  

我已经尝试过arrayName.length = 0;

这应该有效,除非对于那些不符合ECMA-262 ed 3的浏览器 - 这些浏览器非常非常少。它在哪个浏览器中失败了?

  

和arrayName.length = []

大概是你的意思(否则你会看到错误):

arrayName = [];

应该毫无例外地工作。