function trim( str, charlist ) { // Strip whitespace (or other characters) from the beginning and end of a string
//
// + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
// + improved by: mdsjack (http://www.mdsjack.bo.it)
// + improved by: Alexander Ermolaev (http://snippets.dzone.com/user/AlexanderErmolaev)
// + input by: Erkekjetter
// + improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
charlist = !charlist ? ' \s\xA0' : charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '\$1');
var re = new RegExp('^[' + charlist + ']+|[' + charlist + ']+$', 'g');
return str.replace(re, '');
}
Функция также принимает обычный s символ за пробел и тоже его вырезает.
Исправил бы
а что если что-нибудь типа этого???
function trim(str){ while(str.charAt(str.length-1)==" "){str=str.slice(0,str.length-1)} while(str.charAt(0)==" "){str=str.slice(1,str.length)} return str }Функция также принимает обычный s символ за пробел и тоже его вырезает. (с)
function trim( str, charlist ) { /** * ... */ charlist = !charlist ? ' \\s\xA0' : charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g, '\$1'); var re = new RegExp('^[' + charlist + ']+|[' + charlist + ']+$', 'g'); return str.replace(re, ''); }исправленный вариант
На самом деле уже появился нативный метод trim() объекта String. В FF3.5+, в хроме не знаю с какой версии, в остальных не смотрел.
MDN