function getGTK(str){
   var hash = 5381;
   for(var i = 0, len = str.length; i < len; ++i)
   {
   hash += (hash << 5) + str.charAt(i).charCodeAt();
   }
   return hash & 0x7fffffff;
}

解决方案 »

  1.   


            private String getGTK(String str)
            {
                int hash = 5381;
                for (int i = 0; i < str.Length; i++) 
                {
                    hash += (hash << 5) + Encoding.Unicode.GetBytes(new char[] { str[i] })[0];
                }
                return (hash & 0x7fffffff).ToString() ;
            }
      

  2.   

    JS是弱类型的代码,变量都用var表示,转换成C#代码时要加上具体类型