bet*_*eth 2 javascript string split
我有一个像这样的字符串:
var s = 'Lorem ipsum dolor sit amet';
我想要一个像这样的数组:
var l = [3, 3, 3, 1, 2, 5, 4, 1, 2, 1];
var a = ['Lor', 'em ', 'ips', 'u', 'm ', 'dolor', ' sit', 'a', 'me', 't'];
Run Code Online (Sandbox Code Playgroud)
细分的长度不同.
我知道先验我希望第一个元素的长度为3(Lor),第二个为3(em),第三个为3(ips),第四个为1(u),第五个为2(m),第六个为5(dolor),第七个为4 (sit),第八个1(a),第九个2(me)和第十个1(t).
我能怎么做?
您可以映射单个长度的部分.
它适用于最后一个位置的闭包 p
(p => i => string.slice(p, p += i))(0)
(p => )(0) // call function with zero as p and return cb
i => string.slice(p, p += i) // callback for map
Run Code Online (Sandbox Code Playgroud)
var lengths = [3, 3, 3, 1, 2, 5, 4, 1, 2, 1],
string = 'Lorem ipsum dolor sit amet',
result = lengths.map((p => i => string.slice(p, p += i))(0));
console.log(result);Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
64 次 |
| 最近记录: |