Создание собственного ответа, поскольку никто не считал, что разделение может не произойти (более короткий текст). В этом случае мы не хотим добавлять «...» в качестве суффикса.
Тернарный оператор разберется с этим:
var text = "blahalhahkanhklanlkanhlanlanhak";
var count = 35;
var result = text.slice(0, count) + (text.length > count ? "..." : "");
Может быть закрыт для работы:
function fn(text, count){
return text.slice(0, count) + (text.length > count ? "..." : "");
}
console.log(fn("aognaglkanglnagln", 10));
И перейдите к классу помощников, чтобы Вы даже могли выбрать, хотите ли вы точки или нет:
function fn(text, count, insertDots){
return text.slice(0, count) + (((text.length > count) && insertDots) ? "..." : "");
}
console.log(fn("aognaglkanglnagln", 10, true));
console.log(fn("aognaglkanglnagln", 10, false));