我怎么能,使用Javascript,使一个函数,将修剪字符串传递作为参数,到指定的长度,也作为参数传递。例如:
var string = "this is a string";
var length = 6;
var trimmedString = trimFunction(length, string);
// trimmedString should be:
// "this is"
有人有想法吗?我听说过一些关于使用子字符串,但不太明白。
我怎么能,使用Javascript,使一个函数,将修剪字符串传递作为参数,到指定的长度,也作为参数传递。例如:
var string = "this is a string";
var length = 6;
var trimmedString = trimFunction(length, string);
// trimmedString should be:
// "this is"
有人有想法吗?我听说过一些关于使用子字符串,但不太明白。
当前回答
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/substr
从链接:
string.substr(start[, length])
其他回答
只是另一个建议,删除任何尾随空白
limitStrLength = (text, max_length) => {
if(text.length > max_length - 3){
return text.substring(0, max_length).trimEnd() + "..."
}
else{
return text
}
这是我的解决方案,其中也包括修剪空白。
const trimToN = (text, maxLength, dotCount) => {
let modText = text.trim();
if (modText.length > maxLength) {
modText = text.substring(0, maxLength - dotCount);
modText = modText.padEnd(maxLength, ".");
return modText;
}
return text;
};
trimToN('Javascript', 6,2)将返回“Java..”
为什么不直接使用substring…字符串。substring(0、7);第一个参数(0)是起点。第二个参数(7)是结束点(独占)。更多信息请点击这里。
var string = "this is a string";
var length = 7;
var trimmedString = string.substring(0, length);
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/substr
从链接:
string.substr(start[, length])
我认为你应该使用这个代码:-)
// sample string
const param= "Hi you know anybody like pizaa";
// You can change limit parameter(up to you)
const checkTitle = (str, limit = 17) => {
var newTitle = [];
if (param.length >= limit) {
param.split(" ").reduce((acc, cur) => {
if (acc + cur.length <= limit) {
newTitle.push(cur);
}
return acc + cur.length;
}, 0);
return `${newTitle.join(" ")} ...`;
}
return param;
};
console.log(checkTitle(str));
// result : Hi you know anybody ...