計算字符串的實際長度,雙字節字符(包括漢字在內)長度計2,ASCII字符計1
方法1:使用match:
export function getByteLenMatch(data) {
let result = 0;
for (let s of data) {
result += s.match(/[^\\x00-\\xff]/ig) == null ? 1 : 2;
}
r
為啥需要?
在實際開發中我們經常會遇到需要長時間等待後台事件的情況,例如較為常見的掃碼登錄功能,二維碼界面需等待後台掃碼登錄成功的事件,再如導入導出等需要較長時間才能處理完成的任務,此時需要把任務放到後台由異步任務進行處理,完成後再給前台界面推送完成事件,以上需求我們需要用長連接才能完成推送,但長連接推送狀態管理複雜,且需要部署獨立系統,系統流程複雜且橫向水平擴展困難,此時選擇更簡單long po