JS代碼給變量賦值為亂碼

代碼如下:

 var k = /[#\/\?@]/g
      , j = /[#\?]/g
      , b = /[#@]/g
      , g = /#/g
      , c = RegExp("^(?:([\\w\\d+.-]+):)?(?://(?:([^/?#@]*)@)?([\\w\\d\\-\\u0100-\\uffff.+%]*|\\[[^\\]]+\\])(?::([0-9]+))?)?([^?#]+)?(?:\\?([^#]*))?(?:#(.*))?$")
      , f = a.Path
      , s = {
        scheme: 1,
        userInfo: 2,
        hostname: 3,
        port: 4,
        path: 5,
        query: 6,
        fragment: 7
    };

請問為什麼要這麼做呢?

确定utf-8吗