`
areshowl
  • 浏览: 48020 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

【转】ECMAScript基础(转换)

阅读更多
转换成字符串

3种主要的原始值Boolean值,数字和字符串都有toString()方法,可以把它们的值转换成字符串。

Boolean型的toString()方法只是输出"true"或"false",结果由变量的值决定:

var bFound = false;
alert(bFound.toString());//outputs "false"
Number类型的toString()方法比较特殊,它有两种模式,即默认模式和基模式。

采用默认模式,toString()方法只是用相应的字符串输出数字值(无论是整数、浮点数还是科学记数法),如下所示:

var iNum1 = 10;
var iNum2 = 10.0;
alert(iNum1.toString());//outputs "10"
alert(iNum2.toString());//outputs "10"
采用Number类型的toString()方法的基模式,可以用不同的基输出数字,例如二进制的基是2,八进制的基是8,十六进制的基是16。基只是要转换成的基数的另一种叫法而已,它是toString()方法的参数:

var iNum = 10;
alert(iNum.toString(2)); //outputs "1010"
alert(iNum.toString(8)); //outputs "12"
alert(iNum.toString(16));//outputs "A"
在前面的示例中,以3种不同的形式输出了数字10,即二进制形式、八进制形式和十六进制形式。HTML采用十六进制数表示每种颜色,在HTML中处理数字时这种功能非常有用。

对数字调用toString(10)与调用toString()相同,它们返回的都是该数字的十进制形式。

转换成数字

ECMAScript提供了两种把非数字的原始值转换成数字的方法,即parseInt()和parseFloat()。正如你可能想到的,前者把值转换成整数,后者把值转换成浮点数。只有对String类型调用这些方法,它们才能正确运行;对其他类型返回的都是NaN。

强制类型转换

还可使用强制类型转换(type casting)处理转换值的类型。使用强制类型转换可以访问特定的值,即使它是另一种类型的。ECMAScript中可用的3种强制类型转换如下:

Boolean(value)——把给定的值转换成Boolean型;

Number(value)——把给定的值转换成数字(可以是整数或浮点数);

String(value)——把给定的值转换成字符串。

用这三个函数之一转换值,将创建一个新值,存放由原始值直接转换成的值。这会造成意想不到的后果。

当要转换的值是至少有一个字符的字符串、非0数字或对象(下一节将讨论这一点)时,Boolean()函数将返回true。如果该值是空字符串、数字0、undefined或null,它将返回false。可以用下面的代码段测试Boolean型的强制类型转换。

Number()的强制类型转换与parseInt()和parseFloat()方法的处理方式相似,只是它转换的是整个值,而不是部分值。还记得吗,parseInt()和parseFloat()方法只转换第一个无效字符之前的字符串,因此"4.5.6"将被转换为"4.5"。用Number()进行强制类型转换,"4.5.6"将返回NaN,因为整个字符串值不能转换成数字。如果字符串值能被完整地转换,Number()将判断是调用parseInt()方法还是调用parseFloat()方法。

最后一种强制类型转换方法String()是最简单的,因为它可把任何值转换成字符串。要执行这种强制类型转换,只需要调用作为参数传递进来的值的toString()方法,即把1转换成 "1",把true转换成"true",把false转换成"false",依此类推。强制转换成字符串和调用toString()方法的唯一不同之处在于,对null或undefined值强制类型转换可以生成字符串而不引发错误。



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/gannbatte/archive/2008/11/07/3238573.aspx
分享到:
评论

相关推荐

    ECMAScript 基础知识

    ### ECMAScript基础知识详解 #### 一、ECMAScript简介 ECMAScript 是 JavaScript 的核心规范,由欧洲计算机制造商协会(ECMA International)制定。它规定了浏览器等环境执行脚本语言的基础语法和数据类型等内容。...

    ECMAScript从零开始学-课件

    ECMAScript基础部分会介绍JavaScript的基本语法,包括变量声明(var、let、const)、数据类型(如字符串、数字、布尔值、null、undefined、对象、数组和符号)、以及如何在代码中进行注释。 2. **值与类型**: 这...

    ECMAScript

    ### ECMAScript基础知识点概述 #### 一、ECMAScript简介 ECMAScript(简称ES)是一种被标准化的脚本语言规范,最初由Netscape公司提交至欧洲计算机制造商协会(ECMA International),并最终形成了国际标准ECMA-262...

    ECMAScript Edition 4 Draft

    3. 数值类型:ECMAScript Edition 4 Draft介绍了多种数值类型,包括有符号和无符号长整数、单精度和双精度浮点数,并提供了它们的简写表示法、转换规则和算术运算规则。 4. 数据模型:标准定义了ECMAScript中的数据...

    ECMAScript-Edition5-小试

    为了更好地满足开发者的实际需求并提高编程效率,ECMAScript 第五版(简称 ES5)在原有的基础上进行了大幅度的更新与优化。ES5 不仅为开发者提供了更为丰富多样的 API 接口,还在语法层面实现了更加严谨的设计,引入...

    ECMAScript+6入门

    - **早期版本**:ECMAScript 1.0版于1997年发布,随后的几年内分别推出了2.0版(1998年)和3.0版(1999年),3.0版奠定了JavaScript的基础语法。 - **ES4的失败**:2007年,ES4草案公布,但由于其激进的变化遭到了...

    JS简体繁体在线转换工具.zip

    一、JavaScript基础与ECMAScript规范 JavaScript,作为Web开发的基石,是一种轻量级的解释型编程语言,主要应用于客户端的网页交互。它遵循ECMAScript(ES)规范,目前最新的版本为ES2022。JavaScript的核心特性...

    Ecma-262(ECMAScript5.1中文版+英文版)

    以上只是ECMAScript 5.1中部分重要的特性介绍,这个规范还包含了更多细节,例如变量声明、类型转换、原型链、作用域规则等。通过阅读提供的中文版HTML和英文版PDF文档,开发者可以深入了解这些概念,提升JavaScript...

    PB9进制转换函数集合

    3. **进制转换原理**:理解二进制、八进制、十进制和十六进制的基本概念和转换规则是使用这些函数的基础。例如,二进制转十进制可以通过乘权求和的方法,而十进制转二进制则通常采用除二取余法。 4. **导入和使用...

    AS3 PNG图片转二进制

    1. **AS3基础**: AS3是Adobe Flash平台的主要编程语言,广泛用于创建富互联网应用程序、动画以及游戏。它基于ECMAScript,支持面向对象编程,并且提供了强大的媒体处理能力。 2. **位图和像素数据**: 在AS3中,...

    esprima-python:用于多用途分析的ECMAScript解析基础结构

    **ESPrima-Python:多用途的ECMAScript解析框架** ESPrima-Python是基于JavaScript的ESPrima解析器的Python实现,它为开发者提供了一种强大的工具,用于处理和分析ECMAScript(JavaScript)代码。这个库的核心功能...

    js基础知识

    JS引擎负责解释和执行ECMAScript代码,并将其转换为可执行的机器代码。 2. **DOM (Document Object Model)**: DOM是HTML和XML文档的一种结构化表示,它允许通过JS来操作文档的各个部分。例如,`document....

    es5:ecmascript 5 中文版 + es合集

    综上所述,ECMAScript 5是JavaScript发展历程中的一个重要里程碑,它的特性在现代Web开发中仍然广泛使用,而后续的ES2015及以后的版本则在此基础上进行了许多创新和优化。了解和掌握这些知识点对于成为一名熟练的...

    vue px自动转rem 架子

    在“vue px自动转rem 架子”中,我们关注的是如何在Vue项目中实现像素单位(px)到相对单位(rem)的自动化转换。这在移动端开发中尤其重要,因为rem单位可以让我们更容易地实现页面的自适应布局,特别是在不同屏幕...

    JS基础笔记(大部分)

    ### JS基础知识点详解 #### 一、JavaScript特性 ...以上总结了JavaScript的基础知识点,包括语言特性、变量声明规则、类型转换、进制表示等核心概念。理解这些基础知识对于深入学习JavaScript至关重要。

    ecma-262 中文版

    ### ECMAScript 语言规范(ECMA-262)概览 ...它不仅涵盖了语言的基础语法和类型系统,还深入探讨了执行上下文、类型转换等高级主题。对于从事 JavaScript 开发的人员来说,ECMA-262 标准是一份不可或缺的参考资料。

    boilerplate-phaser-es2016, 在 Phaser.js 上,示例游戏 使用 ECMAScript 2016语法.zip

    在这个案例中,boilerplate-phaser-es2016包含了一套适合使用ES6语法的Phaser项目结构,帮助开发者专注于游戏逻辑,而非基础设置。 4. **项目结构**:boilerplate-phaser-es2016-master这个文件夹很可能包含了以下...

    ES6基础知识题

    - **`isNaN`函数**:`window.isNaN`会尝试将传入的参数转换为数值类型再进行判断,而`Number.isNaN`则只接受数值类型的参数。 - **`Number.isInteger`函数**:用于判断一个值是否为整数,对于形式上为整数的小数(如...

    babel-7.16.0.tar.gz

    Babel 是一个广泛使用的 JavaScript 转换工具,它允许开发者使用最新的 ECMAScript 特性(如 ES6、ES7、ES8 等)编写代码,并将这些现代语法转换为浏览器或运行环境能够理解的 ES5 语法。在"babel-7.16.0.tar.gz"这...

Global site tag (gtag.js) - Google Analytics