GregsJavascriptLibrary

by Greg Finzer

JavaScript

function IsNumber(value)
{
    return !IsNull(value) && !isNaN(value);
}

function IsNull(value)
{
    if (typeof(value) === "undefined")
        return false;
    
    if (value == null)
        return false;
    
    return true;
}

function FormatPhone(phone) {    
        if (!phone)
            return phone;
    
        var onlyNumbers = ExtractNumbers(phone);

        if (onlyNumbers.length < 7)
            return phone;
        if (onlyNumbers.length === 7) {
            return onlyNumbers.substr(0, 3) + "-" + onlyNumbers.substr(3, 4);
        } else if (onlyNumbers.length === 10) {
            return "(" + onlyNumbers.substr(0, 3) + ") " + onlyNumbers.substr(3, 3) + "-" + onlyNumbers.substr(6, 4);
        } else {
            return "(" + onlyNumbers.substr(0, 3) + ") " + onlyNumbers.substr(3, 3) + "-" + onlyNumbers.substr(6, 4) +
                " ext " + onlyNumbers.substr(10);
        }
}

function ExtractNumbers(text) {
    if (!text)
        return text;
    
    return text.replace( /\D+/g, '');
}