cjkspace
Version:
Add space between CJK character and western character
29 lines (23 loc) • 707 B
JavaScript
;
var shouldSpace = require('./shouldSpace');
var zip = function zip(a, b) {
return a.reduce(function (acc, next, i) {
return acc.concat(next, String(b[i]));
}, []);
};
var join = function join(array, f) {
return array.reduce(function (acc, next) {
return acc + f(acc, next) + next;
});
};
var cjkspace = function cjkspace(string) {
for (var _len = arguments.length, subs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
subs[_key - 1] = arguments[_key];
}
return join(zip(string, subs.concat('')).filter(function (c) {
return c !== '';
}), function (a, b) {
return shouldSpace(a, b) ? ' ' : '';
});
};
module.exports = cjkspace;