Я предоставлю вам несколько методов расчета длины SMS-сообщения в JavaScript, а также примеры кода. Вот четыре различных подхода, которые вы можете использовать:
Метод 1. Использование свойства длины
function calculateSmsLength1(message) {
var maxLength = 160; // Maximum characters allowed per SMS
var length = message.length;
var smsCount = Math.ceil(length / maxLength);
return smsCount;
}
console.log(calculateSmsLength1("Hello, this is a test message."));
Метод 2. Использование метода среза
function calculateSmsLength2(message) {
var maxLength = 160; // Maximum characters allowed per SMS
var smsCount = 0;
while (message.length > 0) {
message = message.slice(maxLength);
smsCount++;
}
return smsCount;
}
console.log(calculateSmsLength2("Hello, this is a test message."));
Метод 3. Использование регулярных выражений
function calculateSmsLength3(message) {
var maxLength = 160; // Maximum characters allowed per SMS
var smsCount = 0;
var regex = new RegExp(".{1," + maxLength + "}", "g");
var parts = message.match(regex);
smsCount = parts.length;
return smsCount;
}
console.log(calculateSmsLength3("Hello, this is a test message."));
Метод 4. Использование API длины SMS (сторонний сервис)
async function calculateSmsLength4(message) {
var url = "https://api.smslength.io/message";
var apiKey = "your_api_key"; // Replace with your API key
var response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer " + apiKey
},
body: JSON.stringify({ message: message })
});
var data = await response.json();
var smsCount = data.smsCount;
return smsCount;
}
calculateSmsLength4("Hello, this is a test message.").then(function(smsCount) {
console.log(smsCount);
});