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 ...
随机推荐
- cordova通过指纹插件进行指纹验证
原文:cordova通过指纹插件进行指纹验证 版权声明:本文为博主原创文章,转载须注明出处,博客地址:https://blog.csdn.net/wx13227855087 https://blog. ...
- switch语句中default用法详解
当年学C语言switch开关语句的时候,很多人会告诉你它是这么用的: switch(表达式){ case常量表达式1: 语句1;break; case常量表达式2: 语句2;break; - case ...
- 关于MOVE 和 CopyMemory 的用法区别
最近做了一个数据采集服务器, 根据程序的框架,使用了大量的指针结构体(内存块) 操作. 例子: PArrayByte = ^TArrayByte; TArrayByte = packed recor ...
- WPF动态创建Image的显示问题
原文:WPF动态创建Image的显示问题 最近学习WPF,看到一篇教程讲解如何动态创建Image控件,自己练手时候无论如何也显示不出图片.刚开始以为是图片的路径有问题,可后来将图片的路径设为相对路径或 ...
- CUDA查询和选取设备信息
CUDA查询设备信息 CUDA C中的cudaGetDeviceProperties函数可以很方便的获取到设备的信息,函数原型是: cudaError_t CUDARTAPI cudaGetDevic ...
- 机器学习编程接口(api)设计(oop 设计)
fit: 对于 kmeans 来说,fit 的过程,就是训练,自然所需的参数,主要是数据集和聚类中心数, 1. classification(分类) def train(train_images, t ...
- 自定义Behavior 实现Listbox自动滚动到选中项
原文:自定义Behavior 实现Listbox自动滚动到选中项 blend为我们提供方便的behavior来扩展我们的控件,写好之后就可以在blend中方便的使用了. 下面是自定义的behavior ...
- 在WPF中添加3D特性
原文:在WPF中添加3D特性 35.4 在WPF中添加3D特性 本节介绍WPF中的3D特性,其中包含了开始使用该特性的信息. 提示: WPF中的3D特性在System.Windows.Media.M ...
- A Byte of Python (for Python 3.0) 下载
在线阅读:http://www.swaroopch.org/notes/Python_en:Table_of_Contents 英文版 下载地址1:http://files.swaroopch.com ...
- java的System.getProperty()值的方法可以得到
java.version Java 执行时环境版本号 java.vendor Java 执行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装 ...