说明(2017.3.29):

1. 数字+上下文=信息,如果是做数学运算,就是数字,如果是输出字符串给用户,就是码表字符。

2. ASCII码,共128个数字,128个数字刚好7个二进制位(2的7次方=128),0~127。

  ※ 位就是位置,一个字节有8个二进制位,计算机运行的最小单位是字节,所以总归都是要把位转换成字节的,

    第2位就是把字节转换成8个二进制位的时候,第2个0/1,其中1:1,2:10,3:11,4:100,...,255:11111111(8个1,最左边的1是最高位或第7位,最右边的1是最低位或第0位)。

  1个字节表示1个字符(1个字节是8位,8位二进制数表示1个字符)。

  数字0到10是48到57,大写字母A是65,小写字母a是97,空格是32。

3. 双字节字符,与ASCII码重合的是一个字节,其他的是两个字节(gb2312国标码,big-5繁体字)

4. unicode码,又称为utf-16,统一编码,任何字符都是两个字节。

5. utf-8,统一转换格式,前128个字符用1个字节,1个汉字用3个字节。

测试:

新建文本文档.txt,输入内容“1a我”,另存为1.txt,编码格式unicode。另存为2.txt,编码格式utf-8。

其中1.txt占8字节,“1a我”分别占1个字节(31,61),还有三个打酱油的(unicode编码不够用,补零)各占1字节,前面两个ff和fe是说明这是个文本文档,各占1字节,共8字节。内容全部删掉后,剩2字节。

然后2.txt占8字节,“1a”各占1字节(31,61),“我”占3字节,前面的ef,bb,fb各占1字节,共8字节。内容全部删掉后,剩3字节。

JavaScript高级 面向对象(3)--字符编码的更多相关文章

  1. JavaScript高级 面向对象(5)--内存逻辑图画法

    说明(2017.3.30): 1. 使用软件diagram designer,DiagramDesignerSetup1.28.zip,很小只有1M多,我用的自带画图软件.教学视频是“JavaScri ...

  2. JavaScript高级 面向对象(1)--添加一个div标签

    说明(2017.3.28): 1. JavaScript是一种基于对象的多范式编程语言,不是面向对象,但离开对象不能活. 范式编程是指编程习惯.方式,分为过程式.对象式和函数式编程. 2. 面向对象是 ...

  3. JavaScript高级 面向对象的程序设计 (一)《JavaScript高级程序设计(第三版)》

    创建对象 继承 面向对象的语言都有一个表示---类.通过类我们可以创建多个具有相同属性的对象.但是,在JS中并没有类的概念,所以JS的对象也和其他语言的对象不同. 对象的定义:无序的属性集合,其属性可 ...

  4. JavaScript高级 面向对象的程序设计 (二)《JavaScript高级程序设计(第三版)》

    二.继承 OO是面向对象语言最为有魅力的概念.一般的OO语言都实现了两种继承,接口继承和实现继承.接口继承只继承方法签名,而实际继承继承了实际的方法. 而在JS中,函数没有签名,所以无法实现接口继承. ...

  5. JavaScript高级 面向对象(13)--构造函数的执行过程

    说明(2017-4-2 21:50:45) 一.构造函数是干什么用的: 1. 初始化数据的. 2. 在js给对象添加属性用的,初始化属性值用. 二.创建对象的过程: 1. 代码:var p = new ...

  6. JavaScript高级 面向对象(12)--引用类型值类型作为参数传递的特性

    说明(2017-4-2 18:27:11): 1. 作为函数的参数,就是将函数的数据拷贝一份,传递给函数的定义中的参数. 函数foo()在调用的时候,做了两件事: (1)函数在调用的时候,首先需要将参 ...

  7. JavaScript高级 面向对象(11)--对象的动态特性-关联数组用法

    说明(2017.4.2): 1. 对象的动态特性: (1)在js中,一个对象需要属性,就可以利用“对象名.属性 = 值”的方式为其添加,只要赋值成功,对象就新增这个属性. (2)对象属性的访问形式: ...

  8. JavaScript高级 面向对象(10)--onload与jq中ready的区别

    说明(2017.4.2): 1. 在body中放一个img标签,src链接一张图片,那么页面会先读取html的document文档,然后再读取外部资源(这里没加onload其实就是从上往下顺序读取). ...

  9. JavaScript高级 面向对象(9)--深拷贝代码实现

    说明(2017.4.1): 1. 深拷贝要把对象里的“方法”也复制一份出来,“方法”里的“方法和属性”再判断深浅进行拷贝. 2. 办法就是写一个函数deepCopy,里面判断深浅拷贝,然后每个对象都添 ...

随机推荐

  1. Eclipse常用且不易记快捷键

    大小写转换:CTRL+SHIFT+X,Y 复制行:CTRL+ALT+↑,↓(部分无法使用) 查看继承关系:CTRL+T 直接查看系统源码:CTRL+SHIFT+T 查看所有快捷键:CTRL+SHIFT ...

  2. Android API之android.os.Parcelable

    android.os.Parcelable Interface for classes whose instances can be written to and restored from a Pa ...

  3. Coding.net+Myeclipse 2014 Git配置

    安装Git,然后 $ssh-keygen -t rsa -b 4096 -C "your_email@example.com" # Creates a new ssh key, u ...

  4. Python 的 if __name__ == '__main__'

    Python 文件 最后部分会有: if __name__ == '__main__': TestRLSO()……………… 1)首先,这是一个判断语句. 表示执行的是此代码所在的文件.如果这个文件是作 ...

  5. JavaScript(select onchange)的网页跳转的简单实现

    方法一: <select   onchange="goUrl(this.options[this.selectedIndex])"> <option>==& ...

  6. 浅谈软件配置管理工具(github & SVN)

    1   配置管理名词定义 1.1 配置项 软件生存周期各个阶段活动的产物经审批后即可称之为软件配置项. 软件配置项包括: ①与合同.过程.计划和产品有关的文档和资料: ②源代码.目标代码和可执行代码: ...

  7. eclipse 中使用中文JAVA api文档

    http://hi.baidu.com/danghj/item/7625a1be20946e43ba0e1202在eclipse中使用中文JAVA api文档Sun 官方的中文版 Java API 文 ...

  8. mysql 必须掌握的工具pt-query-digest安装

    mysql 必须掌握的工具pt-query-digest 古人云:工欲善其事,必先利其器.作为一名优秀的mysql dba也需要有掌握几个好用的mysql管理工具,所以我也一直在整理和查找一些能够便于 ...

  9. 键盘事件keydown、keypress、keyup随笔整理总结

    英文输入法:   事件触发顺序:keydown - > keypress - > keyup   中文输入法:   firfox:输入触发keydown,回车确认输入触发keyup chr ...

  10. python学习笔记——正则表达式regex

    1 概述 1.1 定义 本质是由一系列字符和特殊符号组成的字串,用来表示一定规则的某一类字符串. 1.2 特点 正则表达式是一个独立的技术,其在多种编程语言中使用. 在python语言中的正则表达式模 ...