如何从动态生成的数组值中删除双引号

时间:2018-11-03 06:26:38

标签: jquery html arrays

我在这里有一个简单的概念。单击控制台中的第一个按钮可获得一些值,这是增量索引++。我已经组合了值并将第二个按钮的onclick放入数组中,现在输出为

  

[“ $('#chart1')”,“ $('#chart2')”,“ $('#chart3')”],

但是我唯一需要修复的是删除数组中每个值周围的双整数。我需要这样的输出

  

[$('#chart1'),$('#chart2'),$('#chart3')]

这是下面的代码。

html

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div><button id="button1" class="button1">submit1</button> </div>
<div><button id="garray" class="button1">genarete-array</button> </div>

脚本

 var index = 0;
    var id = [];

    $('#button1').on('click', function() {
        index++;
        id.push(`$(\'#chart${index}\')`)
        console.log('chart' + index);
    });

$('#garray').on('click', function() {
console.log(id);
//output [ $('#chart1'), $('#chart2'),$('#chart3')]
})

3 个答案:

答案 0 :(得分:1)

尝试以下代码:

id.push($(`#chart${index}`));

您可以在这里进行测试: https://jsfiddle.net/alonshmiel/x25btyn1/5/

答案 1 :(得分:1)

没有双引号就不能存储它,但是可以像下面一样替换它。

  var index = 0;
var id = [];

$('#button1').on('click', function() {
    index++;
    var temp="$('#chart"+index+"')";
    id.push(temp);
    console.log('chart' + index);
});

$('#garray').on('click', function() {

var string = JSON.stringify(id);
console.log(string.replace (/"/g,''));

//output [ $('#chart1'), $('#chart2'),$('#chart3')]
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<div><button id="button1" class="button1">submit1</button> </div>
<div><button id="garray" class="button1">genarete-array</button> </div>

另一件事是,如果您想删除字符串类型以外的引号,则可以使用map函数。

stringvaribale.map(parseFloat), stringvaribale.map(Number),etc.

答案 2 :(得分:0)

一旦将其推入数组,根据您的数据通常是字符串,因此对于这种情况,您应该将其转换为JSON.stringify,然后尝试使用正则表达式data.replace(/"/g,"")来摆脱棚