将字符串拆分/推送为数组

时间:2017-12-22 18:25:08

标签: javascript

我有一个由' - '分隔的字符串。并需要将其转换为数组。我试过拆分它,但它没有用完。



@php
    $sum_produit = $cmdbar->le_tarif_bar * $cmdbar->la_qtt;
    $total += $sum_produit;
@endphp
{{ number_format($sum_produit/100, 2, '.', ' ') }}




3 个答案:

答案 0 :(得分:1)

您可以将其转换为json格式,然后使用解析方法。

var creditsPerDOM = '[1, 72]-[2, 79]-[3, 81]-[4, 76]-[5, 93]-[6, 81]-[7, 85]-[8, 66]-[9, 66]-[10, 72]-[11, 67]-[12, 72]-[13, 71]-[14, 80]-[15, 94]-[16, 56]-[17, 61]-[18, 81]-[19, 82]-[20, 64]-[21, 74]-[22, 77]-[23, 96]-[24, 83]-[25, 91]-[26, 85]-[27, 72]-[28, 80]-[29, 74]-[30, 70]-[31, 86]';

var array = JSON.parse('['+ creditsPerDOM.split("-").join(",") +']');

console.log(array);

答案 1 :(得分:1)

这类似于@Taplar的JSON aproach(根据this fiddle,这是此处列出的所有答案中最快的),但它会转换每个单独的项目。

这种方法有利于提高性能。



var creditsPerDOM = '[1, 72]-[2, 79]-[3, 81]-[4, 76]-[5, 93]-[6, 81]-[7, 85]-[8, 66]-[9, 66]-[10, 72]-[11, 67]-[12, 72]-[13, 71]-[14, 80]-[15, 94]-[16, 56]-[17, 61]-[18, 81]-[19, 82]-[20, 64]-[21, 74]-[22, 77]-[23, 96]-[24, 83]-[25, 91]-[26, 85]-[27, 72]-[28, 80]-[29, 74]-[30, 70]-[31, 86]';

var dataSeries = creditsPerDOM.split('-').map(JSON.parse);

console.log(dataSeries);




如果我理解正确,

$.plot('#line-chart', [dataSeries] ... )

答案 2 :(得分:0)

您可以利用字符串的类JSON格式

var creditsPerDOM = '[1, 72]-[2, 79]-[3, 81]-[4, 76]-[5, 93]-[6, 81]-[7, 85]-[8, 66]-[9, 66]-[10, 72]-[11, 67]-[12, 72]-[13, 71]-[14, 80]-[15, 94]-[16, 56]-[17, 61]-[18, 81]-[19, 82]-[20, 64]-[21, 74]-[22, 77]-[23, 96]-[24, 83]-[25, 91]-[26, 85]-[27, 72]-[28, 80]-[29, 74]-[30, 70]-[31, 86]';

 var all = creditsPerDOM.split(-);

 var final = [];

 all.forEach(function(miniArray){
      var arr = JSON.parse(miniArray);   // [x, y]
      final.push(miniArray[0]);
      final.push(miniArray[1]);  
 })