浅谈JavaScript数据类型
1.数据类型是什么?
我们接触的绝大多数程序语言来说,把数据都进行了分类,包括数字、字符、逻辑真假:int,long,string,boolean....等等;我们都知道计算机对数据处理时是采用二进制的方式。将数据加载到内存中,并且通过CPU调度进行计算得到最终结果,那么,难道内存存储数据时会记录所以数据的类型吗?我认为答案是否定的,内存中的数据应该会根据所占内存的大小来进行区分和计算的,两种不同类型数据的计算,对于CPU来说只是调度了两个所占内存大小不一的数据来进行计算,所以对于CPU来说,数据只有1和0。那么这里就出现了问题,有些人会说Java语言某两种数据不能直接计算,必须转换才能计算。这里,就是强类型和弱类型的区别,强类型语言会对每一种数据进行严格的检查,也就是对于每种类型内存所占空间进行检查,如果不符合要求,就不允许编译或者运行。弱类型则没有对数据进行严格的检查,允许大多数数据类型直接进行计算,JavaScript属于弱类型。
2.JavaScript有哪些类型?
包括以下几种:
Number:也就是数字包括浮点数
Boolean:真假(true or false)
String:字符串
Null:空对象指针,表明指向的内存空间不存在
Undefined:未定义,表明指向的内存空间存在,但是没有数据
Object:一中复杂的数据类型,如果熟悉类似Java面向对象语言,对此应该很好理解
通过以上这6中类型,就能将数据进行分类了,对于数据的容器JavaScript统一用关键字 var 声明,那么如何确定一个变量是那种类型呢?这就要用到关键字 typeof
这里,需要说明的是 typeof 是一个操作符(类似+、-、*、/) 而非 function 你可以直接 typeof a 使用(尽管这样不推荐)。而 null 和 undefined 在比较大小时是相等的。因为 undefined 派生自 null。
下边是 typeof 的举例
var mesage='some string';
var obj=new Object();
var a;
alert(typeof message);//'string'
alert(typeof(message));//'string'
alert(typeof(95));//'number'
alert(typeof(a));//'undefined'
alert(typeof(null==undefined));//'boolean'
alert(null==undefined);//'true'
alert(obj);//'object'
alert(null);//'object'(在不同浏览器中也可能为'null')
以上就是关于javascript数据类型的所有内容了,希望大家能够喜欢。
相关推荐
-
深入探讨javascript中的数据类型
学一门编程语言,无非两方面:一是语法,二是数据类型.类C语言的语法不外乎if.while.for.函数.算术运算等,面向对象的语言再加上object. 语法只是语言设计者预先做的一套规则,不同语言语法不尽相同,但都有一些共通点,对于熟悉一两门编程语言的人,学其他的编程语言时,语法往往不是问题(当然,如果你一直学的是类C语言,那么首次接触lisp时肯定也要花些时间),学习的重点往往是数据类型及其相关操作上,不是有句老话:"数据结构+算法=程序"!其次,有些语言的语法本身就存在设计问题(j
-
JavaScript数据类型判定的总结笔记
用typeof 来检测数据类型 Javascript自带两套类型:基本数据类型(undefined,string,null,boolean,function,object)和对象类型. 但是如果尝试用typeof 来检测对象类型都一律返回"object"并不能加以区分 typeof null // "object" typeof [] // "object" typeof document.childNodes //"object&qu
-
浅谈javascript六种数据类型以及特殊注意点
在js中常见的六种数据类型:String类型.Null类型.Number类型.Boolean类型.Object类型. 1.typeof的注意点 涉及到数据类型,不免会提到,操作符 typeof.要注意: 1.typeof是操作符,不是方法.虽然我们经常使用typeof()的方式获取对象的数据类型. 2.对 null 取typeof 是 object(这是因为null是 空的对象引用),对函数取 typeof 是 function 复制代码 代码如下: alert(typeof null);
-
浅谈JavaScript数据类型及转换
JavaScript数据类型 1.Boolean(布尔) 布尔:(值类型)var b1=true;//布尔类型 2.Number(数字) 数值:(值类型)var n1=3.1415926;//数值类型 n1.toFixed(3);//四舍五入保留3位小数. 3.String(字符串) 复制代码 代码如下: var s1='hello';//字符串类型 字符串:(值类型,字符串不可变特性) 4.Undefined(未定义) undefined属于值类型,与其他值计算得到的结果不是我们想要的,但与数
-
Javascript中的五种数据类型详解
Undefined 未定义.只有一个值undefined Null 只有一个值,null Boolean 在javascript中,只要逻辑表达式不返回undefined不返回null,就都是真的. 复制代码 代码如下: if(3) true if(null) false if(undefined) false Number String javascript中不存在char类型. 字符串定义可以用单引号,也可以用双引号. 复制代码 代码如下: <html> <head> <
-
判断javascript的数据类型(示例代码)
1 判断是否为数组类型 复制代码 代码如下: <STRONG><script type="text/javascript"> //<![CDATA[ var a=[0]; document.write(isArray(a),'<br/>'); function isArray(obj){ return (typeof obj=='object')&&obj.constructor==Array; } //]]> </
-
JavaScript数据类型详解
数据类型 JavaScript中有5种简单数据类型(也称为基本数据类型):Undefined.Null.Boolean.Number和String.还有1种复杂数据类型--Object,Object本质上是由一组无序的名值对组成的. typeof操作符 介于JavaScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型--typeof就是负责提供者方面信息的操作符.对一个值使用typeof操作符可能返回下列某个字符串: ● "undefined"--如果这个值未定义: ●
-
浅谈JavaScript数据类型
1.数据类型是什么? 我们接触的绝大多数程序语言来说,把数据都进行了分类,包括数字.字符.逻辑真假:int,long,string,boolean....等等:我们都知道计算机对数据处理时是采用二进制的方式.将数据加载到内存中,并且通过CPU调度进行计算得到最终结果,那么,难道内存存储数据时会记录所以数据的类型吗?我认为答案是否定的,内存中的数据应该会根据所占内存的大小来进行区分和计算的,两种不同类型数据的计算,对于CPU来说只是调度了两个所占内存大小不一的数据来进行计算,所以对于CPU来说,数
-
浅谈JavaScript的内置对象和浏览器对象
在javascript中对象通常包括两种类型:内置对象和浏览器对象,此外,用户还可以自定义对象. 对象包含两个要素: 1. 用来描述对象特性的一组数据,也就是若干变量,通常称为属性. 2. 用来操作对象特性的若干动作,也就是若干函数,通常称为方法. 浏览器对象 对象 含义 anchor 当前文档中设置了name属性的超链接 applet 当前文档中的小程序 area 客户端图形映射中的区域 button 表单中的按钮 checkbook 表单中的复选框 document 当前窗口中的HTML文档
-
浅谈js数据类型判断与数组判断
写在开篇: 昨天面试发现一个十分非常简单的问题竟然没有回答上来,可能也确实是因为太紧张了,感觉被自己蠢哭了.后来想想还是应该认真记录一下,这样才能印象深刻.革命尚未成功,壮实仍需努力! 1. js六大数据类型 number:数字,整数.浮点数等等, string:单引号或者双引号来说明, Boolean:返回true和false,这两个值不一定对应1和0 object:对象,可以执行new操作符后跟要创建的对象类型的名称来创建. null:只有一个值得数据类型,逻辑上讲,null值表示一个空对象
-
浅谈JavaScript 标准对象
在JavaScript的世界里,一切都是对象. 但是某些对象还是和其他对象不太一样.为了区分对象的类型,我们用typeof操作符获取对象的类型,它总是返回一个字符串: typeof 123; // 'number' typeof NaN; // 'number' typeof 'str'; // 'string' typeof true; // 'boolean' typeof undefined; // 'undefined' typeof Math.abs; // 'function' ty
-
浅谈JavaScript工具链不完全指南
目录 概述 静态类型检查 代码风格检查(Linter) 包管理器 模块加载器 打包工具 任务管理工具(Task Runner) 转译器 构建工具 调试工具 Node 进程管理器 项目脚手架 概述 在 JavaScript 语言日渐强大的同时,与其配套的开发工具也蓬勃发展.现在的 Web 前端项目,早已不是写几个 HTML 页面,加点 CSS 和 JS 就完事了.随便一个实用的项目,可能都需要用到一些框架和第三方库,以及相应的脚手架.依赖包管理.预编译.构建打包.压缩合并等等工具.纯手工完成这些任
-
浅谈JavaScript 浏览器对象
window window对象不但充当全局作用域,而且表示浏览器窗口. window对象有innerWidth和innerHeight属性,可以获取浏览器窗口的内部宽度和高度.内部宽高是指除去菜单栏.工具栏.边框等占位元素后,用于显示网页的净宽高.还有一个outerWidth和outerHeight属性,可以获取浏览器窗口的整个宽高. 补充: 网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽:
-
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
前面的话 javascript中运算符总共有46个,除了前面已经介绍过的算术运算符.关系运算符.位运算符.逻辑运算符之外,还有很多运算符.本文将介绍条件运算符.逗号运算符.赋值运算符.()和void运算符 条件运算符 条件运算符是javascript中唯一的一个三元运算符(三个操作数),有时直接称做'三元运算符'.通常这个运算符写成'?:',当然在代码中往往不会这么简写,因为这个运算符拥有三个操作数,第一个操作数在'?'之前,第二个操作数在'?'和':'之间,第三个操作数在':'之后 varia
-
浅谈Python数据类型之间的转换
Python数据类型之间的转换 函数 描述 int(x [,base]) 将x转换为一个整数 long(x [,base] ) 将x转换为一个长整数 float(x) 将x转换到一个浮点数 complex(real [,imag]) 创建一个复数 str(x) 将对象 x 转换为字符串 repr(x) 将对象 x 转换为表达式字符串 eval(str) 用来计算在字符串中的有效Python表达式,并返回一个对象 tuple(s) 将序列 s 转换为一个元组 list(s) 将序列 s 转换为一个
-
浅谈JavaScript中面向对象的的深拷贝和浅拷贝
理解深拷贝和浅拷贝之前需要弄懂一些基础概念,内存中存储的变量类型分为值类型和引用类型. 1.值类型赋值的存储特点, 将变量内的数据全部拷贝一份, 存储给新的变量. 例如:var num = 123 :var num1=num; 表示变量中存储的数字是 123.然后将数据拷贝一份,就是将 123 拷贝一份. 那么内存中有 2 个 数组;将拷贝数据赋值给 num2,其特点是在内存中有两个数据副本.这可以理解为浅拷贝. 2.引用类型的赋值. var o={name:'张三'}: var obj=o;
随机推荐
- jQuery解决IE6、7、8不能使用 JSON.stringify 函数的问题
- 批处理代码搞定Windows下Nginx+PHP(FastCGI)管理
- JAVA并发编程有界缓存的实现详解
- 学习JavaScript设计模式(链式调用)
- Asp.NET调用百度翻译的方法
- CI框架数据库查询缓存优化的方法
- 真正根据utf8编码的规律来进行截取字符串的函数(utf8版sub_str )
- python itchat实现微信自动回复的示例代码
- Three.js实现绘制字体模型示例代码
- node.js中的fs.truncateSync方法使用说明
- CSS实现的一个图片放大展示的一种思路
- Ajax+Struts2实现验证码验证功能实例代码
- XML轻松学习手册(1)XML快速入门
- 三种Android单击事件onclick的实现方法
- java 出现NullPointerException的原因及解决办法
- 详解Android中Handler的实现原理
- 如何在Android中实现渐显按钮的左右滑动效果
- SQL+C#实现获得当前月的第一天与最后一天
- vue和react等项目中更简单的实现展开收起更多等效果示例
- seajs下require书写约定实例分析