关于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}

View Code

  数值的取值范围:

    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()方法的返回值相同

 

转载于:https://www.cnblogs.com/hutou/p/5030724.html

JavaScript 系列笔记(一)数据类型相关推荐

  1. tom大叔blog--------深入理解javascript系列-----------笔记

    之前一直收藏着tom大叔的blog,只是自己懒了下下...每个blog都像一个秘籍,每次看都有收获,也许自己道行太浅吧..不过还是很高兴,记下..也为了督促自己坚持下去... 一.深入理解JavaSc ...

  2. JavaScript复习笔记(3)——数据类型(null、undefined、NaN)与深度克隆

    JavaScript中的数据类型:Number.Boolean.String.Object.Function 但是此外还有一些容易混淆的类型如null.undefined.NaN.Array的概念 f ...

  3. javaScript系列笔记 - JS实现MP4播放

    1.html,引入代码(供参考,调用方式自行定义) <!-- 通过点击图片触发函数,调起播放器 --> <div class="container-row explain- ...

  4. javaScript系列笔记 - JS生成倒计时

    以动态修改p标签值为主 1.html 代码 <!-- daojishi --> <div class="mask-app" style="height: ...

  5. Web前端开发笔记——第四章 JavaScript程序设计 第三节 数据类型

    目录 一.基本数据类型 (一)String类型 (二)Number类型 1.字面量 2.无穷大 3.非数值 (三)Boollean类型 (四)Undefined类型和Null类型 二.引用数据类型 ( ...

  6. Javascript学习笔记一 之 数据类型

    在接触每一门编程语言之前,首先明白我们程序设计要处理的是"数据",而"数据"又用"数据类型"将其区分. 一.数据类型 Javascript是 ...

  7. 【熬夜猛肝万字博文】学妹问我怎么入门 Javascript,百般盘问下我终于决定贡献出自己的 JavaScript入门笔记(三)

    你好,我是阿ken?? 版权声明:本文为CSDN博主「」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明. 另外,博文中某些图片或内容可能出自网络,如有侵权或问题,请及 ...

  8. JavaScript基础笔记集合(转)

    JavaScript基础笔记集合 JavaScript基础笔记集合   js简介 js是脚本语言.浏览器是逐行的读取代码,而传统编程会在执行前进行编译   js存放的位置 html脚本必须放在< ...

  9. JavaScript 学习笔记(1)

    1.     何为 Jscript JScript 是一种解释型的.基于对象的脚本语言. 局限性: 1)        不能使用该语言来编写独立运行的应用程序 2)        没有对读写文件的内置 ...

  10. JavaScript学习笔记01【基础——简介、基础语法、运算符、特殊语法、流程控制语句】

    w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...

最新文章

  1. R语言在ggplot中使用变量指定柱状图的名称实战
  2. javascript获取和设置URL中的参数
  3. 又在GitHub上挖到个宝藏:Switch模拟器!
  4. 【错误记录】执行 Python 程序报错 ( NameError: name ‘reload‘ is not defined )
  5. 剖析Picasso加载压缩本地图片流程(解决Android 5.0部分机型无法加载本地图片的问题)
  6. Microsoft SQL Server 2019开发版安装配置教程
  7. mac安装了多版本php 卸载,mac 安装多版本PHP
  8. 在ubuntu怎样修改默认的编码格式
  9. MySQL数据库无完整备份删库,除了跑路还能怎么办?
  10. 【工程项目经验】之Xcode的Instruments检测解决iOS内存泄露
  11. java 日期只计算年月日大小_java 日期加减天数、月数、年数的计算方式
  12. JS CKEditor使用setData后绑定click事件
  13. 计算机科学技术名家讲座许进,论高校计算机科学与技术课程中存在的问题与改革方向.pdf...
  14. 栈的基本操作(详细)
  15. 人工智能(12)大数据
  16. python图像检测_图像检索系列——利用 Python 检测图像相似度
  17. 电脑各种故障排除集锦
  18. SLAM综述阅读笔记四:A Survey on Deep Learning for Localization and Mapping: Towards the Age of Spatial 2020
  19. Arcmap做地图要领总结
  20. PCtoLCD2002图片取模显示位图图像无效

热门文章

  1. Django之HttpRequest和HttpReponse
  2. Python3+Selenium3自动化测试-(准备)
  3. curl如何发送json数据?如何发送form数据?python的restfull又该如何获取这些数据?...
  4. 【CF870F】Paths 分类讨论+数学
  5. linux 压缩文件的命令总结
  6. BZOJ 3744: Gty的妹子序列 [分块]
  7. UVALive 6181
  8. 另类的JS常见函数应用
  9. js为lable和div赋值
  10. java处理图片base64编码的相互转换