- 浏览: 72589 次
- 性别:
- 来自: 北京
最新评论
首先我们可以看C中间的强制类型转换,只能存在整数可表示类型和浮点数类型之间,比如(int)2.45,这是可以的,但是他们和字符串之间都没有强制转换的可能,因为字符串实际是一个指针。因此不可能出现(char *)2.45就可以获得"2.45"这个字符串的情况,反之也不能。
而在C++中,我们可以创建一个类,并且重载强制转换操作,来完成这种情况,那么就必须要求有相应的对象,但是对于基本类型,这也是不可以的。
然后,因为JavaScript在对象模型上主要参考了Java,我们可以再参考一下Java的类型转换:
在Java中,基本类型之间的强制转换也不是这样的,比如,整数要转换成字符串,必须使用Integer.toString()静态方法或者String.valueOf()静态方法,把字符串转换为整数,必须使用Integer.valueOf()。
可见,不能把JavaScript中的类型转换看作为“强制类型转换”。
在JavaScript中,Double类型和Int类型都是看作为Number对象,因此无论是typeof 1还是typeof 1.0,都是返回number。这样我们可以不用去管是Int还是Double类型,让JavaScript解释引擎内部去处理。
1. 如果要把Number转换成String,可以使用Number的toString()方法,(象(1).toString()括号必须或者 1 .toString()空格必须,否则会编译出错,如果是变量则无需),或者调用String()函数,这两种方法都会自动调用解释引擎内部的 NumberToString(),或者根据进制调用其它函数,基本类似。
2.如果要把String转换成Number,可以使用Number ()函数,他会自动判断String中是整数还是浮点数,然后内部使用相应的数据类型,另外可以使用全局函数parseInt()和parseFloat (),他们根据你的要求进行转换。同样的,他们在解释引擎内部机制上是使用了 StringToNumber,StringToInt等等内部的函数。
3.而如果是Double转换成Int,必须使用Math.floor()函数(截尾取整)或者Math.round()(四舍五入)
4.Int转换成Double,无须考虑任何问题,直接把Int当成Double进行运算
5.字符转换为整数,如下,可以采用eval(String)的方法:
var a = "234" ;
a = a.replace(/(^[\\s]*)|([\\s]*$)/g, "");
if( a !="" && !isNaN( a ) )
{//如果是数字
a = eval( a )
}
else
{//如果不是数字
a = null
}
javascript有两种数据类型的转换方法:一种是将整个值从一种类型转换为另一种数据类型(称作基本数据类型转换),另一种方法是从一个值中提取另一种类型的值,并完成转换工作。
基本数据类型转换的三种方法:
1.转换为字符型:String(); 例:String(678)的结果为"678"
2.转换为数值型:Number(); 例:Number("678")的结果为678
3.转换为布尔型:Boolean(); 例:Boolean("aaa")的结果为true
从一个值中提取另一种类型的值的方法:
1.提取字符串中的整数:parseInt(); 例:parseInt("123zhang")的结果为123
2.提取字符串中的浮点数:parseFloat(); 例:parseFloat("0.55zhang")的结果为0.55
3.执行用字符串表示的一段javascript代码:eval(); 例:zhang=eval("1+1")的结果zhang=2
注:Number、String函数是特殊的函数,在JS引擎中,他会自动判断是作为构造函数调用还是普通调用,所以既可以使用new关键字,也可以作为函数直接调用。
关于JS的参考手册,微软有一个CHM十分不错,指南、API参考都有,是Windows脚本技术,中文版,我在MSDN上下载的。而关于JS解释引擎的,我参考的是Netscape的Spidermonkey,现在由Mozilla组织维护。
发表评论
文章已被作者锁定,不允许评论。
-
前台分页, 我这里总结一下工作中实现的几种 Ext tree 和 grid 的分页问题。
2010-12-09 15:31 21241、tree 的分页。 当树中的叶子节点过多的时 ... -
Ext.grid.GridPanel 加多个 Ext.Toolbar
2010-12-08 16:58 1647搜索条件很多,一行toolbar不够用了,默认情况下ext一行 ... -
仿qwikiOffice,在ExtJS2.0.2下实现的信息提示小窗口Notification
2010-11-25 14:29 1189在 qwikiOffice 中看到有右下角的消息提示框,在系统 ... -
js实现导入导出打印预览
2010-11-05 11:26 1782<%@ page contentType="a ... -
上传 formpanel
2010-08-17 16:52 1053Ext.ns('Flow.deployProcess'); ... -
[Ext扩展]两个来自Ext官方论坛的时间控件扩展,可选择时分秒
2010-07-28 10:29 3555为方便大家使用,我把控件所需的js、css、gif文件都提取 ... -
如何隐藏form表单中的ComboBox与fiedLabel
2010-03-11 18:50 2142如何隐藏form表单中的ComboBox与fiedLabel ... -
Ext.data- Connection/Ajax/Record
2010-03-10 11:43 973Ext.data.Connection 访问指定的url,这 ... -
Ext grid 动态表头的例子
2010-02-21 10:24 19991.Ext.onReady(function(){ 2 ... -
【转】ExtJS 3.0 优秀扩展简介 (持续更新)
2010-02-21 09:42 713http://atian25.iteye.com/blog/4 ... -
Ext2.2动态生成ColumnModel
2010-02-09 15:35 1696本篇主要介绍动态生成ColumnModel,进而生成动态生成G ... -
gridpanel动态重新加载columnModel与store
2010-02-09 15:06 1489其实很简单的,主要就是以下三项.//重新绑定gridthis. ... -
ExtJS中get、getDom、getCmp、getBody、getDoc的使用(转)
2010-02-09 14:36 3185Ext中包含了几个以get开头的方法,这些方法可以用来得到文档 ... -
Ext2的日期组件只选择年月
2010-02-04 10:37 776使用 和以前使用一样 -
MyEclipse的JavaScript提示插件(JSEclipse)
2010-01-27 10:29 2953MyEclipse的JavaScript提示插件(JSEcli ... -
grid去掉分页 刷新
2010-01-25 10:17 1409Ext.override(Ext.PagingToolbar, ... -
在ExtJs的容器中显示图片,并动态更新
2010-01-25 09:26 2094{ xtype: 'box', //或者x ... -
grid三层表头
2010-01-21 17:36 1288MyGridView = Ext.extend(Ext.gri ... -
ext javasript json转换为对象
2010-01-21 15:09 921var json = response.responseT ... -
扩展Ext.form.DateField实现定义日期面板默认展示日期
2010-01-20 16:20 2758用了这么久的EXT,感觉Ext的功能是很全很强了,但任何东西都 ...
相关推荐
parseInt()-将字符串转化为整型 parseFloat()-将字符串转化为浮点数 ...String()-函数能够将任何类型的值转换为字符串 tostring()-将数字转换为进制 Boolean()-转换为Boolean值 toFixed-()将数值转换为字符串
javascript有两种数据类型的转换方法: (一)将整个值从一种类型转换为另一种数据类型(称作基本数据类型转换) (二)从一个值中提取另一种类型的值,并完成转换工作 基本数据类型转换的三种方法: 1.转换为字符...
在js中,数据类型转换分为显式数据类型转换和隐式数据类型转换。 1, 显式数据类型转换 a:转数字: 1)Number转换: 代码: var a = “123”; a = Number(a); 注意: a) 如果转换的内容本身就是一个数值类型的字符...
类型转换是网页编程不可或缺的内容,本文先介绍自动类型转换,接着是强制性的显式类型转换,最后如何将基本数据类型提升为对象。 JavaScript的数据类型分为基本数据类型和复合数据类型。复合数据类型主要有对象、...
对初学者的最全数据类型转换,javascript几种基本的数据类型转换,有数值类型,字符串类型及布尔类型
认识JavaScript的数据类型;学习目标;认识JavaScript的数据类型; 1.变量的数据类型;基本数据类型-数字型;认识JavaScript的数据类型;... 数据类型转换;认识JavaScript的数据类型;认识JavaScript的数据类型;认识Jav
JavaScript是一种无类型语言,但同时JavaScript提供了一种灵活的自动类型转换的处理方式。基本规则是,如果某个类型的值用于需要其他类型的值的环境中,JavaScript就自动将这个值转换成所需要的类型。
JavaScript程序设计课件:数据类型转换.pptx
JavaScript是一门弱类型(或称动态类型)的语言,即变量的类型是不确定的。下面通过本文给大家分享javascript数据类型转换小结,包括显示转换的数据类型和隐式的数据类型转换,感兴趣的朋友跟随脚本一起看看吧
JavaScript — 数据类型的转换1
JavaScript+js语法基础+js数据类型+js数据类型转换+js运算符 我学习js的第二天,通过老师讲解总结的一份js语法基础,适用于初学者学习js基础语法,知识点相对来说比较细节。
主要介绍了JavaScript中的数据类型转换方法,是JavaScript入门学习中的基础知识,需要的朋友可以参考下
本文主要介绍了Javascript的基本数据类型和数据类型的转换规则。具有很好的参考价值,需要的朋友可以看下
关于DW和JavaScript的数据类型方面的知识点 JavaScript常用的知识点 JavaScript6种数据类型知识点 JavaScript强制类型转换知识点
JavaScript的数据类型分为六种,分别为null,undefined,boolean,string,number,object。object是引用类型,其它的五种...本章节单独介绍一下javascript中的隐式数据类型转换,对于它的良好掌握,在实际应用能够简化很多
字面量、变量、标识符 JavaScript的6种数据类型: 基本数据类型:String 字符串类型 Number数值类型 Boolean 布尔类型 Null 空值类型 Undefined 未定义... 主要是将其他数据类型转换为String Number Boolean。