html 的表单 length 长度是以字符个数计算的,不管是汉字还是字母,但是数据库又是按字节计算的,汉字占 2 个字母占 1 个,这样容易造成写入的时候长度超出的问题。
// 假设页面编码是 utf8 | |
function lengthInUtf8Bytes(str) { | |
var m = encodeURIComponent(str).match(/%[89ABab]/g); | |
return str.length + (m ? m.length : 0) / 2; | |
} |
html 的表单 length 长度是以字符个数计算的,不管是汉字还是字母,但是数据库又是按字节计算的,汉字占 2 个字母占 1 个,这样容易造成写入的时候长度超出的问题。
// 假设页面编码是 utf8 | |
function lengthInUtf8Bytes(str) { | |
var m = encodeURIComponent(str).match(/%[89ABab]/g); | |
return str.length + (m ? m.length : 0) / 2; | |
} |