JavaScript 系列笔记(一)数据类型
关于JS的数据类型
简单类型有五种:Undifined, Null, Boolean, Number, String
复杂类型有一种:Object
通过typeof 操作符来获取数据类型,此操作符返回字符串
undifined
boolean
string
number
object
function
类型Undifined
只有一个值,就是undifined
typeof 未初始化的变量,返回undifined
typeof 未声明的变量,返回undifined
Null类型
只有一个值,就是null
typeof null 返回object
Boolean类型
只有两个字面值:true, false
所有类型的值都有与这两个值等价的值

Number类型
表示浮点数的时候最高精度为17位小数,但是精度不如整数
var a = 0.1;
var b = 0.2;
则: a + b = 0.30000000000000004
所以,使用浮点数需要注意精度问题。可以使用如下的方法进行:
function accAdd(arg1, arg2) {
var r1, r2, m, c;
try { r1 = arg1.toString().split(".")[1].length } catch (e) { r1 = 0 }
try { r2 = arg2.toString().split(".")[1].length } catch (e) { r2 = 0 }
c = Math.abs(r1 - r2);
m = Math.pow(10, Math.max(r1, r2))
if (c > 0) {
var cm = Math.pow(10, c);
if (r1 > r2) {
arg1 = Number(arg1.toString().replace(".", ""));
arg2 = Number(arg2.toString().replace(".", "")) * cm;
}
else {
arg1 = Number(arg1.toString().replace(".", "")) * cm;
arg2 = Number(arg2.toString().replace(".", ""));
}
}
else {
arg1 = Number(arg1.toString().replace(".", ""));
arg2 = Number(arg2.toString().replace(".", ""));
}
return (arg1 + arg2) / m
}
数值的取值范围:
Number.MIN_VALUE
Number.MAX_VALUE
超出取值范围的数值为:Infinity,可以通过isFinite()函数来判断
NaN 表示非数值,本身是一个数值对象
最大的特点是不等于任何值,即使是NaN,isNaN()函数可以判断是否为NaN
数值转换
Number()函数的转换规则
parseInt()
会判断是否符合数值模式,会忽略开头的空格,直到遇到第一个非空字符,解析到第一个非数值为止
parseInt(参数1,16) 表示使用16进制转换,参数含义为进制
parseFloat()
使用方法与上面类似
String类型
Object类型
对象可以通过new来创建。在JS中Object类型是所有它的实例的基础。Object中的方法和属性都存在于更具体的对象中
constructor 构造函数,保存创建当前对象的函数
hasOwnProperty(propertyName) 检查给定的属性是否存在于当前对象中
isPrototypeOf(object) 检查传入的对象是否是当前对象的原型
propertyIsEnumerable(propertyName) 检查给定的属性是否能使用for-in语句来枚举
toLocaleString() 返回对象的字符串表示
toString() 返回对象的字符串表示
valueOf() 返回对象的字符串、数值或布尔值表示。通常与toString()方法的返回值相同
JavaScript 系列笔记(一)数据类型的更多相关文章
- 【JavaScript学习笔记】数据类型
1.获取数据类型 typeof 用法: typeof variable or typeof(variable) JavaScript中总共有6种数据类型,string.number.boolean ...
- JavaScript学习笔记——2.数据类型与类型转换
数据类型 JS中一共分成六种数据类型 1- String 字符串 2- Number 数值 3- Boolean 布尔值 4- Null 空值 5- Undefined 未定义 6- Object 对 ...
- javascript学习笔记-数据类型
一 数据类型 基本类型:undefined,null,boolean,number,string 保存在栈内存中 占用空间固定 变量直接从栈内存中存取的是该值 引用类型: ...
- JavaScript系列----数据类型以及传值和传引用
1.简单数据类型 在JavaScript中简单数据类型分为5种.分别为 Undefined, Null,Boolean,Number,String. Undefined类型Undefined类型只有一 ...
- JavaScript学习笔记(一)——数据类型和变量
在学习廖雪峰前辈的JavaScript教程中,遇到了一些需要注意的点,因此作为学习笔记列出来,提醒自己注意! 如果大家有需要,欢迎访问前辈的博客https://www.liaoxuefeng.com/ ...
- JavaScript:学习笔记(2)——基本概念与数据类型
JavaScript:学习笔记(2)——基本概念与数据类型 语法 1.区分大小写.Test 和 test 是完全不同的两个变量. 2.语句最好以分号结束,也就是说不以分号结束也可以. 变量 1.JS的 ...
- 深入理解javascript系列,读书笔记
深入理解JavaScript系列(2):揭秘命名函数表达式 1.讲了函数声明和函数表达式的区别,包括一些在函数提升上的区别 2.如果给函数表达式的函数也取名,会在调试的时候受益 3.不要在block( ...
- 高性能javascript学习笔记系列(2)-数据存取
参考 高性能javascript Tom大叔深入理解javascript系列 相关概念 1.执行上下文 当控制器转到ecmascript可执行代码的时候,就会进入一个执行上下文,执行上下文是以堆栈 ...
- JavaScript 系列博客(一)
JavaScript 系列博客(一) 前言 本系列博客为记录学习 JavaScript 的学习笔记,会从基础开始慢慢探索 js.今天的学习笔记主要为 js 引入.定义变量以及 JavaScript 中 ...
随机推荐
- Reachability 检测网络状态
-(void)viewWillAppear:(BOOL)animated { [IOSExcept JudgeNetwork];//联网 NSLog(@"检查网络 请稍后....." ...
- 『软件介绍』SQLServer2008 基本操作
0x 01 连接数据库 Win7下,先打开SQLServer管理工具(开始菜单/所有程序/Microsoft SQL Server 2008/SQL Server Management Studio) ...
- 关于nginx架构探究(4)
事件管理机制 Nginx是以事件驱动的,也就是说Nginx内部流程的向前推进基本都是靠各种事件的触发来驱动,否则Nginx将一直阻塞在函数epoll_wait()或suspend函数,Nginx事件一 ...
- 转载-常用API接口签名验证参考
原文地址: http://www.cnblogs.com/hnsongbiao/p/5478645.html 写的很好,就做个笔记了.感谢作者! 项目中常用的API接口签名验证方法: 1. 给app分 ...
- HDU_2029——回文串的判断
Problem Description “回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串.请写一个程序判断读入的字符串是否是“回文”. Input 输入包 ...
- LA 4794 - Sharing Chocolate dp
题意 有一块\(x*y\)的巧克力,问能否恰好分成n块,每块个数如下 输入格式 n x y a1 a2 a3 ... an 首先\(x \times y 必然要等于 \sum\limits_{i=1} ...
- guestfish 修改 image file
Example guestfish sessionSometimes, you must modify a virtual machine image to remove any traces of ...
- 深入理解linux网络技术内幕读书笔记(三)--用户空间与内核的接口
Table of Contents 1 概论 1.1 procfs (/proc 文件系统) 1.1.1 编程接口 1.2 sysctl (/proc/sys目录) 1.2.1 编程接口 1.3 sy ...
- javaweb笔记6多个响应头以及 HttpServletResponse对象
1 常见的响应头 Location: http://www.it315.org/index.jsp 重定向的地址.配合302的状态码一起使用,实现重定向效果. Content-Type: te ...
- eclipse tomcat 网页404的一个小问题
之前一篇文章说过关于修改tomcat布置的应用的localhost路径.因为有两个项目在eclipse,所以我每次启动tomcat的时候都会加载两个项目, 但我其实只用调试其中一个项目,所以我就在se ...