位置: 编程技术 - 正文

JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型(javascript高级程序设计第五版 pdf下载)

编辑:rootadmin
ECMAScript是一种动态类型的语言,构建于5种简单数据类型(Undefined、Null、Boolean、Number、String)和一种复杂数据类型(Object)的基础之上。这篇文章就来复习一下简单数据类型,我会尽量从编程实践的角度来描述,下面代码运行环境为FireFox .0.1。

推荐整理分享JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型(javascript高级程序设计第五版 pdf下载),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript高级程序设计第六版,javascript高级程序设计第六版,javascript高级程序设计pdf百度云,javascript高级程序设计pdf下载,javascript高级程序设计第六版,javascript高级程序设计pdf下载,javaScript高级程序设计有几版,javascript高级程序设计第六版,内容如对您有帮助,希望把文章链接给更多的朋友!

简单数据类型

简单数据类型取值Undefinedundefined(只有一个值)Nullnull(只有一个值)Booleantrue|false(只有两个值)Number数值String字符串

  首先需要说明的是,在ECMAScript中,上述5种简单数据类型,其中Boolean、Number、String都有同名的内置包装对象,而简单数据类型的字面值(变量)会根据情况自动包箱,从而可以直接调用方法,至于具体可以调用哪些方法,在讨论内置对象时再详细说明:其次说一下实际用的最多的数据转换:   (1)转换为Boolean:!!value   (2)转换为Number:+value   (3)转换为String:''+value   下面再具体说明5种简单数据类型: 1、Undefined类型   Undefined数据类型只有一个取值:undefined。 (1)所有未初始化的值都默认为undefined(也就没有必要把一个变量显示初始化为undefined了)。 (2)在函数作用域中,没有传入实际参数的函数形参为undefined。 (3)函数没有明确返回或者return;的时候,返回值为undefined。 (4)在ECMAScript中,规定null==undefined返回true,而null===undefined返回false。 (5)undefined相应的Boolean值为false。 (6)使用typeof作用于undefiend时,返回字符串'undefined',作用于一个从未声明的“变量”时,也会返回'undefined'。 (7)undefined转换数值为NaN,转换字符串为'undefined'。 2、Null类型   Null类型也只有一个值:null。 (1)对null值使用typeof时,返回字符串'object'。 (2)null相应的Boolean值为false。 (3)如果一个变量用于保存一个对象,建议初始化为null。 (4)null转换数值为0,转换字符串为'null'。 3、Boolean类型   Boolean类型只有两个值:true和false。 (1)虽然只有两个值,但是任何一种数据类型的值都能转换为与其相对应的Boolean值,转换方式主要有三种:   A、通过转型函数Boolean()转换     需要注意的是,当Boolean()作为转换函数时,会转换为一个与其相应的Boolean值,当作为构造函数时,会创建一个对象,而任意非空对象的Boolean值都是true,有时候这会造成误解,建议就是不使用Boolean()。对于String()、Number()也有类似情况。   B、通过双重否定!!操作符转换   C、通过隐式转换,比如一些条件语句中 (2)Boolean类型的true和false,使用typeof时,均返回字符串'boolean'。 (3)在转换为数值时,true和false分别转换为1和0,转换为字符串时,分别为'true'和'false'。 具体的转换规则如下:

数据类型转换为true的值转换为false的值Undefined-undefinedNull-nullBooleantruefalseNumber任意非0数值(包括无穷大)0和NaNString任意非空字符串空字符串Object任意对象-

JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型(javascript高级程序设计第五版 pdf下载)

4、Number类型

  在ECMAScript中,没有单独的整型、浮点型,只有一个Number类型,使用IEEE格式来表示(这种表示法在计算时会有舍入误差),在这里不去细究底层实现,这些东西在学校学C语言的时候已经很头痛了,不想再头痛一次。下面我把实际编程中用的最多的放到最前面来讲,这一般来说已经足够,对于不想被太边缘的细节所困扰的朋友,随时可以跳过后面关于Number的论述。

(1)数值转换:主要是下面的三个转换函数

Number()函数:和Boolean()类似,将数据转换成Number类型,和使用一元加操作符(+)作用相同,建议使用 + 操作符,比较简单。parseInt()函数:解析整数,可以传入数据和进制,如parseInt('',8)输出进制的。parseFloat()函数:解析浮点数,只能接受一个参数,需要注意的是,如果被解析的数据结果是整数,会直接返回整数。

注:使用Number()和+转换时,true—>1,false—>0,undefined—>NaN,null—>0,空字符串—>0,非空字符串—>按数值解析。 说明:这些转换函数的行为可能会由于浏览器的不同实现而不同,建议在实际编程过程中对存有疑问的先自行编写测试。在《JavaScript高级程序设计(第3版)》中,这一节描述的也有很多地方和我实际运行的结果不同,比如原书说parseInt()只能解析字符串,但是下面的代码也可以运行: (2)整数和浮点数:受C语言熏陶的人,肯定要固执的区分一下整数和浮点数吧!在ECMAScript中,他们没有预想的那么有差别,简单点,含有小数点且小数点后至少有一位不是0的数值就是浮点数,否则就是整数,比如1.是浮点数,1.、1.因为小数点后没有不是0的数,引擎会解析成整数1。你可能会设想两个整数相除结果也会取整吧,比如3 / 2 = 1,但是在ECMAScript中,不要担心这些,已经还原其数学属性了,你会发现 3 / 2 = 1.5了,这一点,在运算符相关部分还会再提及。 (3)进制:也称进位制,实际上就是进位(低位向高位)的方法,每种进制都有一个基数,当低位数值达到这个基数时,就向高位进1。在日常生活中,用的最多的自然是进制,比如角就进位为1元,在时间度量中,还有进制(小时为1天)、进制(秒为1分),在古代,也有使用进制的(想一想半斤八两吧)。但是在计算机的处理中,由于电流只有通和不通两种状态,所以只能处理2进制数据,不过这对于自然人来说不好理解,于是又使用8进制、进制作为进制和2进制转换的中间状态。   在ES3中,可以使用8进制、进制、进制,但是在ES5中,8进制已经被禁用了。   8进制:以1位数字0开始,后面是8进制数字序列(0~7),如果数字超过了7,会忽略前导0而作为进制处理,比如会解析为进制的数字8。   进制:以1位数字0和1个字母x开始,后面是进制数字序列(0-9a-fA-F)。   进制:可以直接将所有数位一一写出来,也可以使用科学计数法(不明白?找一本中学数学教科书来看看吧)来表示。 (3)特殊值:在ECMAScript中,有2个特殊的数值NaN和Infinity需要注意一下,前者表示不是一个数值(Not a Number),后者表示不在表示范围内的数值,还可以使用正负号表示方向。对于这两个特殊值,这里不去考察具体的运算规则(你若感兴趣,可以自行测试,我在下面也会举一些例子),只做如下两点说明:   A、不能用val==NaN来判断一个变量是否为NaN,而要使用全局的isNaN()函数,该函数接受一个参数,当参数可以转换为数值时返回true,否则返回false。   B、尽量不要使用val==Infinity判断是否超出范围,而使用全局的isFinite()函数,该函数接受一个参数,当参数数值处于表示范围内时返回true,否则返回false。这里所说的表示范围是指从Number.MIN_VALUE到Number.MAX_VALUE,另外,在Number里面,还有属性Number.NEGATIVE_INFINITY和Number.POSITIVE_INFINITY,其值分别为Infinity和 -Infinity。 注:在《JavaScript高级程序设计(第3版)》中第页说任何数值除以0都会返回NaN,实际上并非如此。 5、String类型   和一般类C语言不同,在ECMAScript中,没有字符类型,而将字符串类型String作为一种简单类型,其字面量使用引号(单引号'或双引号“)括起来。 (1)对于字符串类型的操作,加号“+”被重载,任意一个数值与字符串相加,都会先将其使用String()转换成字符串,然后将两个字符串合并。 (2)使用String()转换,undefined—>'undefined',null—>'null',true—>'true',false—>'false',数值类型Number—>按数值可见的字符转换,对象Object—>调用toString。

(3)字符串使用反斜杠“”来转义,常见的一些转义字符有:

字面量含义字面量含义n换行\反斜杠t制表'单引号b空格"双引号r回车xnn以十六进制代码nn表示的一个字符f进纸unnnn以十六进制代码nnnn表示的一个Unicode字符

好了,关于简单数据类型,就整理到此。

JavaScript高级程序设计(第3版)学习笔记4 js运算符和操作符 在ECMAScript中,有非常丰富的运算符和操作符,在这篇文章中将按通常的分类来稍微整理一下,不过在整理之前,先说明一下:1、虽然标题是运算符和

JavaScript高级程序设计(第3版)学习笔记5 js语句 砖瓦和水泥都有了,接下来该是砌墙了,在ECMAScript中,语句就是我们需要砌的墙了。语句也和操作符一样,对于有C背景的人来说再自然不过了,下面采

JavaScript高级程序设计(第3版)学习笔记6 初识js对象 在房子里面可以放你想放的任意事物——如果你有足够的美学造诣,你甚至可以弄一个房中房试试——当然,为了方便管理,我们会给房子里存放的所

标签: javascript高级程序设计第五版 pdf下载

本文链接地址:https://www.jiuchutong.com/biancheng/380507.html 转载请保留说明!

上一篇:JavaScript高级程序设计(第3版)学习笔记2 js基础语法(javascript高级程序设计pdf下载)

下一篇:JavaScript高级程序设计(第3版)学习笔记4 js运算符和操作符(javascript高级程序设计电子书)

  • 预缴增值税 进项税扣除
  • 打印社保缴费凭证需要什么证件
  • 出纳购买东西能报销吗
  • 股东个人将钱打入公司对公账户,能否算作投资款
  • 发票鉴定管理办法
  • 银行 收美金
  • 跨境电商怎么交税
  • 补计提个税的会计分录
  • 刚开始建账银行有存款怎么录
  • 进口增值税已付发票未到如何入账
  • 财务人员的大忌
  • 季报所得税可以预交吗
  • 增值税专用发票有效期是多长时间
  • 即用于一般计税又用于简易计税的固定资产抵扣
  • 作进项税转出
  • 外币业务汇兑损益根据业务划分为
  • 自产农产品销售怎么做账
  • 一般纳税人减免的增值税怎么记账
  • 固定资产清理借贷方向增减变动
  • 无法手动设置时区
  • 耳机插在电脑上有滋滋的声音
  • 员工用差旅费冲账怎么办
  • php的运行机制与什么有关
  • 年度企业所得税汇算清缴会计分录怎么做
  • PHP:apache_response_headers()的用法_Apache函数
  • 企业要方便客户与企业的沟通,尽可能降低
  • neoDVDstd.exe - neoDVDstd是什么进程 有什么用
  • 增值税如何在报表里填写
  • phpinclude
  • 进口应税消费品所支付的金额不包括
  • 计算机网络拓扑结构有哪些
  • 企业研发费用的归集
  • php根据经纬度计算距离
  • 盈余公积金可以用来扩大公司生产经营
  • 废旧物资发票抵扣
  • 申请高新技术企业收入要多少
  • 累计摊销属于什么类科目
  • 为什么没缴税
  • 旅行社开的发票怎么记账?
  • python tkinter ttk
  • 存货的会计核算及业务处理
  • 工业企业应收应付会计怎样
  • 计提并缴纳个税分录
  • 帝国cms视频教程
  • 核定征收方式包括哪几种
  • 经销商会议是什么意思
  • 个税汇算清缴时劳务报酬怎么计税
  • 成品油发票抵扣进项税
  • 土地使用税的账务处理分录
  • 付了电费当月没有收到发票
  • 增值税专用发票金额与付款金额是否必须一致
  • 外地预缴税款流程
  • 政府拆迁赔款会计上怎样做账
  • 个税手续费返还政策文件
  • 进项发票认证多了留抵多久
  • 公司购买一台电脑,会计科目怎么办
  • 小规模纳税人认定标准2023年最新
  • 企业所得税预缴2‰
  • 教育机构的咨询
  • 开设明细账
  • yum更新所有软件
  • Win10预览版怎么变回正式版
  • win8metro版桌面安卓下载
  • win7桌面右键菜单多余选项删除
  • win10预览版和正式版区别
  • win10预览版绿屏重启解决
  • linux定时任务详解
  • cocos2dx官方教程
  • node分页接口
  • [置顶] 此外,车牌号:454118(懂得都懂[doge])
  • jsp页面显示日历控件
  • 简单阐述javascript的主要作用
  • 力所能及之处,定当竭尽所能
  • javascript基本概念
  • javascript和html区别
  • 电子税务局内蒙古自治区
  • 国家税务局总局广东省电子税务局官网
  • 保险公司个人所得税扣除标准是多少
  • 出售废铁的会计分录
  • 烟台税务查询系统网址
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设