import { makeStr } from './helper/makeStr'
import { escapeRegexp } from './helper/escapeRegexp'
let nativeTrimRight = String.prototype.trimRight
/**
* 删除字符串头部的指定字符,默认删除空格。
* @module str/trim
* @param {String} str 需删除头部的指定字符的字符串
* @param {String} character 特定的删除字符,默认值为空格
* @return {String} 已删除头部的指定字符的字符串
* @example
* str.rtrim('Hello World ') // 'Hello World'
* str.rtrim('Hello World\t ') // 'Hello World'
* str.rtrim('lloHello', 'llo') // 'lloHe'
* str.rtrim('_-Hello-__-', '-_') // '_-Hello'
* str.rtrim('http://hello/', '/') // 'http://hello'
* str.rtrim(123, 3) // '12'
*/
export let rtrim = (str, character) => {
str = makeStr(str)
character = makeStr(character)
// character为默认值,且支持原声trimRight方法
if (!character && nativeTrimRight) {
return nativeTrimRight.call(str)
}
character = escapeRegexp(character)
let trimReg = new RegExp('[' + character + ']+$', 'g')
return str.replace(trimReg, '')
}