JavaScript高级 面向对象(3)--字符编码
说明(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)--字符编码的更多相关文章
- JavaScript高级 面向对象(5)--内存逻辑图画法
说明(2017.3.30): 1. 使用软件diagram designer,DiagramDesignerSetup1.28.zip,很小只有1M多,我用的自带画图软件.教学视频是“JavaScri ...
- JavaScript高级 面向对象(1)--添加一个div标签
说明(2017.3.28): 1. JavaScript是一种基于对象的多范式编程语言,不是面向对象,但离开对象不能活. 范式编程是指编程习惯.方式,分为过程式.对象式和函数式编程. 2. 面向对象是 ...
- JavaScript高级 面向对象的程序设计 (一)《JavaScript高级程序设计(第三版)》
创建对象 继承 面向对象的语言都有一个表示---类.通过类我们可以创建多个具有相同属性的对象.但是,在JS中并没有类的概念,所以JS的对象也和其他语言的对象不同. 对象的定义:无序的属性集合,其属性可 ...
- JavaScript高级 面向对象的程序设计 (二)《JavaScript高级程序设计(第三版)》
二.继承 OO是面向对象语言最为有魅力的概念.一般的OO语言都实现了两种继承,接口继承和实现继承.接口继承只继承方法签名,而实际继承继承了实际的方法. 而在JS中,函数没有签名,所以无法实现接口继承. ...
- JavaScript高级 面向对象(13)--构造函数的执行过程
说明(2017-4-2 21:50:45) 一.构造函数是干什么用的: 1. 初始化数据的. 2. 在js给对象添加属性用的,初始化属性值用. 二.创建对象的过程: 1. 代码:var p = new ...
- JavaScript高级 面向对象(12)--引用类型值类型作为参数传递的特性
说明(2017-4-2 18:27:11): 1. 作为函数的参数,就是将函数的数据拷贝一份,传递给函数的定义中的参数. 函数foo()在调用的时候,做了两件事: (1)函数在调用的时候,首先需要将参 ...
- JavaScript高级 面向对象(11)--对象的动态特性-关联数组用法
说明(2017.4.2): 1. 对象的动态特性: (1)在js中,一个对象需要属性,就可以利用“对象名.属性 = 值”的方式为其添加,只要赋值成功,对象就新增这个属性. (2)对象属性的访问形式: ...
- JavaScript高级 面向对象(10)--onload与jq中ready的区别
说明(2017.4.2): 1. 在body中放一个img标签,src链接一张图片,那么页面会先读取html的document文档,然后再读取外部资源(这里没加onload其实就是从上往下顺序读取). ...
- JavaScript高级 面向对象(9)--深拷贝代码实现
说明(2017.4.1): 1. 深拷贝要把对象里的“方法”也复制一份出来,“方法”里的“方法和属性”再判断深浅进行拷贝. 2. 办法就是写一个函数deepCopy,里面判断深浅拷贝,然后每个对象都添 ...
随机推荐
- JUC-Callable
实现线程的方式有四种: 1,实现runnable接口: 2,继承Thread. 3,也就是本节的Callable接口. 4,使用线程池. 区别: 实现Callable接口的方式,相较于实现Runnab ...
- java 新创建的类要重写的方法
重写toString方法,可以控制println打印的结构. 如果需要往hashSet或者HashMap中存,需要重写hashCode和equals方法,因为hashSet执行添加,以对象为参数删除, ...
- glusterFS的部署流程
转自:http://www.cnblogs.com/terrycy/p/5915263.html GlusterFS简单配置 1.准备工作 准备三台机器(物理机或者虚拟机均可)用于安装和测试Glu ...
- 如何使用jmeter来实现更大批量的并发的解决方案
近期在用JMeter进行负载测试的 时候,发现使用单台机器模拟测试超过比如500个进程的并发就有些力不从心或者说不能如实的反应实际情况,在执行的过程中,JMeter自身会自动关闭, 要解决这个问题,则 ...
- oracl查询锁表语句
技能源于生活的不断实践,实践是对知识的不断扩展和总结.汇总.进而形成思想体系! --查询锁表语句 select sess.sid, sess.serial#, lo.oracle_username, ...
- OpenWrt的开机启动服务(init scripts)
参考 https://wiki.openwrt.org/doc/techref/initscripts 以一个简单的例子来说明 #!/bin/sh /etc/rc.common # Example s ...
- 九度OJ 1183 守形数 (模拟)
题目1183:守形数 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:2663 解决:1424 题目描写叙述: 守形数是这样一种整数.它的平方的低位部分等于它本身. 比方25的平方是625. ...
- eclipse 快捷键设置
“window→Preferences→General→Keys→你想设置的快捷键" PS(Postscript)我常用的快捷键: 撤销 Undo Ctrl+Z 还原 Redo ...
- AsyncTask与ProgressDialog使用笔记(安卓在背景运行耗时任务)
AsyncTask用在需要在ui线程中调用.在背景线程中执行耗时任务.并且在ui线程中返回结果的场合.下面就是一个在背景中运行的AsyncTask的实现DownloadDBTask, Android中 ...
- Android 弹出有确认按键的对话
//弹出对话框-------------------------------------------------- private void openDialog(String strMsg, Str ...