JS基本类型特性总结
本文代码测试环境: win7 32位,chrome 版本如下:
一,JS基本数据类型:Undefined, Null, Boolean, Number, String, Object六种。
1,Undefined:: 该类型只有一个值:undefined.
1) 一个变量声明但未初始化,值就是 undefined,注意大小写。
e.g:
var msg;
alert(msg); //undefined
2) 一个变量未声明,直接使用会报错,
e.g::
alert(newMsg); //Uncaught ReferenceError: newMsg is not defined
注意:它们调用 typeof 都返回 undefined.
2,Null:该类型只有一个值:null,它是一个空对象指针。
1) typeof(null) 会返回 "object"
2) undefined是从null继承,所以 alert(null == undefined) 返回true.
3,Boolean:只有两个值:true, false 注意全是小写。
内置函数:Boolean() :将指定值转换成布尔值。转换规则以示例给出:
1)Boolean(null); // false
2) Boolean(""); // false Boolean("hello,world"); //true
3) Boolean(undefined); // false
4) Boolean(0); // false Boolean(1);//true Boolean(071); //8进制,true
4,Number: 数值型,包括整型和浮点型。
内置函数:Number(), parseInt(), parseFloat(). isFinite(); isNaN();
其中 parseInt()用于将字符串转换为整型,并可以指定进制。parseFloat()仅针对十进制进行转换。
例子:
1)parseInt(011); // 9,自动识别为8进制,并转换为10进制。
parseInt(11, 8); // 9 ,指定11为8进制数,然后转换为10进制。
parseInt("af", 16); 或 parseInt("0xaf"); // 175 ,都是16进制。
parseInt("af"); // NaN,注意,NaN也是Number类型,typeof 返回 number。
alert(NaN == NaN); //false,NaN和任何值都不相等。
alert(10/0);// Infinity。无穷大。
alert(Number.MAX_VALUE); //最大值, 1.797E308
alert(Number.NEGATIVE_INFINITY);// -infinity 负无穷大。
ifFinite(10/0); // false,说明不是有穷的。
var a=0.1, b =0.2; alert(a+b); //0.300000000000004
alert(a+b == 0.3); // false,浮点计算的误差,基于IEEE754的浮点计算都有此问题。
5,String 类型:
内置函数:toString();
e.g:
1) alert("abc" == "abc"); // true
2) alert("hello".length);
3)var msg; alert(msg.toString()); //报错,不能在undefined上调用toString()
4) var obj=null; alert(obj); //null
5) var num=10; alert(num.toString(2)); //1010,转换成二进制输出。
6,Object类型:
内置函数和属性:
constructor(); hasOwnProperty(pName); isPrototypeOf(pVal); propertyIsEnumerable(pName); toString(); valueOf();
JS基本类型特性总结的更多相关文章
- 关于js基本类型与引用类型(堆内存、栈内存的理解)
js 基本类型与引用类型的区别 ECMAScirpt 变量有两种不同的数据类型:基本类型,引用类型.也有其他的叫法,比如原始类型和对象类型,拥有方法的类型和不能拥有方法的类型,还可以分为可变类型和不可 ...
- TypeScript01 编译环境的搭建、字符串特性、类型特性
知识准备:JavaScript满足ES5前端规范.TypeScript满足ES6前端规范 1 TypeScript开发环境 TypeScript代码不能直接被浏览器识别,必须先转换成JS代码:通常是利 ...
- Ext JS 6 新特性和工具
Ext JS 6 新特性和工具 Ext JS 6 带来很多新特性.工具和改进.以下是一些亮点: • 合并了 Ext JS & Sencha Touch - 在 Ext 6, 你可以访问 Ext ...
- javascript笔记——js的阻塞特性[转载]
JS具有阻塞特性,当浏览器在执行js代码时,不能同时做其它事情,即<script>每次出现都会让页面等待脚本的解析和执行(不论JS是内嵌的还是外链的),JS代码执行完成后,才继续渲染页面. ...
- js的阻塞特性
JS具有阻塞特性,当浏览器在执行js代码时,不能同时做其它事情,即<script>每次出现都会让页面等待脚本的解析和执行(不论JS是内嵌的还是外链的),JS代码执行完成后,才继续渲染页面. ...
- JS 强制类型转化
在Js中, 强制类型转化分为两种情况: 一种是引用类型转化基本类型, 如数组转化成数字:一种是两种不同基本类型之间的转化,如字符串转化为数字.你不能将基本类型转化成引用类型,比如,不可能把数字转化为数 ...
- js基本类型存放和对象存放的区别(对象遍历)
js的基本类型,对象类型的应用在初学的时候,需要自己加以明确,明确了数据类型,在使用过程中才能正确使用变量.如下两个例子是摘自初学时的笔记,为大家提供参考. 1.对象可以存放属性和方法,js基本类型不 ...
- 利用js对象的特性,去掉数组中的重复项
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...
- js变量类型详解
<html> <title>js变量类型详解</title> <meta http-equiv="content-type" conten ...
随机推荐
- 利用伪元素before实现自定义checkbox样式
原理:label标签的for属性可以将文字与复选框进行关联,点击文字可以同时将复选框选中. 隐藏checkbox标签,利用label标签的before伪元素来实现自定义样式.设置before伪元素的 ...
- JScript分割字符串
作者:朱金灿 来源:http://blog.csdn.net/clever101 不废话了,直接用代码说明吧: try { var ss = new Array(); var str="12 ...
- 新世界PT850/PT853检查用友机对接T1交易宝
新世界PT850/PT853检查用友机对接T1交易宝 这是一个老话题.简单.条形码号码模式是没有必要说,我要说的是,,启用条码扫描.显示有关信息. 并能够产生:条码 , 数量,价格格 这样做的目的.将 ...
- CentOS 由 JavaCPP 转让 FFMPEG
1. Java 与 FFMPEG FFMPEG 它是一种广泛使用的媒体处理库,于Java天地,处理视频较弱的能力,因此,有非常大的需求需求Java 转让 FFMPEG. Java 转让C 的方式有非常 ...
- 机器学习: DeepDreaming with TensorFlow (一)
在TensorFlow 的官网上,有一个很有趣的教程,就是用 TensorFlow 以及训练好的深度卷积神经(GoogleNet)网络去生成一些有趣的pattern,通过这些pattern,可以更加深 ...
- IP地址的正则表达式
关键字:IP地址 正则表达式作者:txw1958出处:http://www.cnblogs.com/txw1958/archive/2011/10/13/ip_address_regular_expr ...
- WPF与缓动(四) 弧形缓动
原文:WPF与缓动(四) 弧形缓动 WPF与缓动(四) 弧形缓动 ...
- IdentityServer流程图与相关术语
概念图 apparch 最常见的交互是:浏览器与web应用程序通信web应用程序与web APIs进行通信基于浏览器的应用程序与web APIs通信原生应用与web APIs通信基于服务的应用程序 ...
- C#调用Resources.resx资源文件中的资源
使用到了.NET中的资源文件,也就是Resources.resx,于是就学会了如何调用资源文件中的资源.首先,资源文件可以从项目属性中的资源标签添加.比如,我添加一个图片,叫做aaa.png,添加入资 ...
- WPF自定义控件步骤
1 .在类库里面添加system.xaml的引用,给控件指定Name: 2.设计控件的外观,并将内部元素绑定到控件类的属性:此时即使没有在类中增加相关属性也不会报错,xaml类似html错误只是不显示 ...