jsは文字列のバイトの長さの方法を求めてカプセル化します.

4527 ワード

文字列のバイト長
  • 、文字列バイトを求める
  • 一、文字列のバイトを求めます.
    var str = 'jg78*  ';//     Unicode    255
    function getByteLength(str){
    	var count = 0;
    	for(var i = 0;i < str.length;i ++){
    		if(str.charCodeAt(i) > 255){//charCodeAt    Unicode  
    			count +=2;//   2Byte
    		}else{
    			count ++;//   1Byte
    		}
    	}
    	return count;//         ,     console  
    }
    var res = getByteLength(str);
    
    ここのコードの効率は比較的低いことが分かります.中国語と中国語でないことを判断する時、二つの判断があります.一つの判断だけでいいですか?
    function getByteLength(str){
    	var count = str.length;//  count        
    	for(var i = 0;i < str.length;i ++){
    		if(str.charCodeAt(i) > 255){//  Unicode    255   
    			count ++;//             +1
    		}
    	}
    	return count;//         ,     console  
    }
    
    そうすると、コードの効率を高めて、関数を分かりやすくしたり、思考を鍛えることができます.