Quick actions

cmd+k|ctrl+k

Navigation

Languages

Validate +62 Phone Number

Snippet info

Language

JavaScript

Visibility

public

Author

mirulumam

Created

2020-07-16T07:46:37Z

Updated

2020-07-16T07:46:37Z

function validStr(str) {
        // source:
        // https://stackoverflow.com/a/36328062/4324393
        if (typeof str == "undefined" || !str || str.length === 0 || str === "" || !/[^\s]/.test(str) || /^\s*$/.test(str) || str.replace(/\s/g, "") === "") {
            return false; // means str is NOT INVALID
        } else {
            return true; // means str is VALID
        }
    }

function getWhatsappURL(number) {
        let verifiedNumber = "";
        if ( validStr(number) ) {
            let f = number.substr(0, 1);
            if ( f == "0" ) {
                let r = number.substring(1, number.length);
                verifiedNumber = "+62" + r;
            } else if ( f == "+" ) {
                let r = number.substring(1, number.length - 1);
                let cc = r.substr(0, 2);
                if ( cc == "62" ) {
                    verifiedNumber = number;
                }
            } else if ( f == "6" ) {
                let cc = number.substr(0, 2);
                if (cc == "62") {
                    verifiedNumber = "+" + number;
                }
            }
        }
        
        if ( validStr(verifiedNumber) ) {
            return "whatsapp://send?phone=" + verifiedNumber;
        } else {
            return "INVALID";
        }
    }

console.log("INVALID", getWhatsappURL(""));
console.log("VALID", getWhatsappURL("0827462874824"));
console.log("VALID", getWhatsappURL("62827462874824"));
console.log("VALID", getWhatsappURL("+62827462874824"));
console.log("INVALID", getWhatsappURL("827462874824"));
console.log("INVALID", getWhatsappURL("+827462874824"));
console.log("INVALID", getWhatsappURL("+6327462874824"));

INFO