JavaScript 学习之第一篇JavaScript的数据类型(2016/8/29 晚 23:12)

1. JavaScript的数据类型

  JavaScript 里面有6中数据类型

  Boolean String Number Undefined Null

  Object

  object(对象)类型包含了数组(arrays) 函数(functions) 以及其他一般对。

  数字(Numbers) 类型可以是整型(intergers)或者浮点数(float point)类型以及特殊值NaN 和 Infinity

  字符串(Strings)类型包含了空字符串 " "。

  布尔值(Booleans)类型只有两个值 true 和false。

  最后两个基本数据类型有点特殊 Null类型只有一个值null Undefined只有一个值 undefined。

2. 检测给定变量的数据类型 —— typeof 操作符

  对于一个变量或者值使用typeof可能返回一个字符串

  1. "undefined" 如果这个值未定义。

  2. “boolean”——如果这个值是布尔值
  3. “string”——如果这个值是字符串
  4. “number”——如果这个值是数值
  5. “object”——如果这个值是对象或者null
  6. “function”——如果这个值是函数

3.undefined 类型

   1. Undefined只有一个值,即特殊的undefined。
  2. 当声明的变量未初始化时,该变量的默认值是 undefined。
  3. 对未初始化的变量执行typeof操作符会返回undefined值,对未声明的变量执行typeof操作符也同样会返回undefined值。
  4. 如果对未声明的变量使用除 typeof 之外的其他运算符的话,会引起错误,因为其他运算符只能用于已声明的变量上。

4. Boolean类型

  1. Boolean 有两个字面值 ture 和 false。

   2. true 和 false 区分大小写 True 和 False 都不是 Boolean值 而是标识符。

   3. 各种数据类型可通过调用Boolean() 转换为其对应的Boolean值

     

5. Number类型

  NaN (非数值 Not a Number) 一般发生在类型(String Boolean) 转换失败的时候。

  NaN不能用于算术计算 任何涉及NaN的操作都会返回NaN

  NaN与任何值都不相等 包括自身

  可以使用isNaN() 函数 可以确定参数是否 "不是数值"

  

6.  数值转换 number parseInt  parseFloat

  number 可以用于任何数据类型

  1. 如果是数值,只是简单传入和传出;

  2. 如果是Boolean值,true和false分别返回0和1;

  3. 如果是null,返回0;

  3. 如果是undefined,返回NaN;

  4. 如果是字符串:只包含数字将转换为十进制;包含有效的浮点数将转换为浮点数值;包含有效的十六进制格式将转换为相同大小的十进制整数;空字符串将转换为0;包含上述之外的字符将转换为NaN

  5. 如果是对象,则调用对象valueof()方法,然后按照前面的规则转换返回的值;如果转换的结果是NaN,则调用toString()方法。再按照前面的规则转换返回的字符串。

7. string类型

  ①可由" "或‘ ‘表示
  ②包括一些特殊的字符字面量(转义序列)

  ③字符串一旦创建就不可改变,如果要改变就要毁掉原来的字符串,然后用新的字符串填充该变量。
  ④把一个值转换为字符串可以使用toString()方法,通过传递基数输出二进制、十进制、十六进制,null和undefined没有toString()方法。
  ⑤String()函数可以将任意类型的值转换为字符串:如果有toString()方法则调用该方法范湖相应结果;如果值是null返回"null";如果值是undefined返回"undefined"。

时间: 2024-08-24 23:53:07

JavaScript 学习之第一篇JavaScript的数据类型(2016/8/29 晚 23:12)的相关文章

JavaScript 学习日记 第一篇 Arrays

Arrays Arrays 的一系列方法 pop & push function myFunction() { var testArray = []; testArray = [1, 2, 3, 4]; alert(testArray.pop()); //show 4 for (var i = 0; i < testArray.length; i++) { alert(testArray[i]); }//show 1 2 3 testArray.push(4); for (var i = 0

JavaScript学习笔记第一天——字符串连接的N种方法

Javascript 字符串的连接方法有多种,但效率却有很大区别. 1.逐个字符串相加 var arr = ['item 1', 'item 2', 'item 3', ...]; var list = ''; for (var i = 0, l = arr.length; i < l; i++) { list += '<li>' + arr[i] + '</li>'; } list = '<ul>' + list + '</ul>'; 这种最常见的,

JavaScript学习总结(十二)——JavaScript编写类

在工作中经常用到JavaScript,今天总结一下JavaScript编写类的几种写法以及这几种写法的优缺点,关于JavaScript编写类的方式,在网上看到很多,而且每个人的写法都不太一样,经常看到的就是以下几种方式. 1.构造函数方式 用构造函数模拟"类",在其内部用this关键字指代实例对象. 基本语法: function 类名(){     this.属性名;//公共属性     var 属性名;//私有属性    /*凡是定义类的公共属性和公共方法都要使用this*/   

JavaScript学习总结(十六)——Javascript闭包(Closure)

原文地址: http://www.cnblogs.com/xdp-gacl/p/3703876.html 闭包(closure)是Javascript语言的一个难点,也是它的特色, 很多高级应用都要依靠闭包实现.很早就接触过闭包这个概念了,但是一直糊里糊涂的,没有能够弄明白JavaScript的闭包到底是什么,有什么用,今天 在网上看到了一篇讲JavaScript闭包的文章(原文链接), 讲得非常好,这下算是彻底明白了JavaScript的闭包到底是个神马东东以及闭包的用途了,在此写出来和大家分

JavaScript学习总结(十四)——JavaScript编写类的扩展方法

在?J?a?v?a?S?c?r?i?p?t?中?可以使?用?类的p?r?o?t?o?t?y?p?e属性来?扩?展?类的属?性?和?方?法,在实际开发当中,当JavaScript内置的那些类所提供的动态方法和动态属性不满足我们实际开发时,我们就可以通过"prototype"属性给自定义类添加方法和属性或者扩展原有的类中的方法和属性. 一.扩展JavaScript内置类,添加动态方法 语法格式: 类名.prototype.方法名 = function([param1],[param2],.

javascript高级程序设计 第一章--javascript简介

javascript高级程序设计 第一章--javascript简介Netscape开发的javascript最初的目的就是处理由服务器负责的一些输入验证操作,而在js问世之前,必须                    把表单数据发到服务器端用户才能得到反馈.如今的js不再局限于简单的数据验证,而且具备了与浏览器窗口及其内容等所有方面的交互能力,js已经发展成功能全面的面向客户端的编程语言.javascript由Netscape公司开发,原名Livescript,是为了迎合当时的java热,所

Linux学习笔记——第一篇——Ubuntu安装与操作

笔者是Windows的使用者,由于Coding的需要以及在Linux下开发的方便,所以开始使用Linux. 当然笔者还是割舍不下Windows的,毕竟很多通讯工具等软件以及游戏在Linux下是没有发行的,所以笔者使用了虚拟机啊. 下面给出简单的安装过程. 1.下载虚拟机软件,笔者比较喜欢VMPlayer,因为它比较轻便且免费,并且很好的支持了拖拽复制功能(VM TOOL),当然也可以使用如VirtualBox.VPC等 链接:https://my.vmware.com/web/vmware/fr

深入理解javascript对象系列第一篇——初识对象

× 目录 [1]定义 [2]创建 [3]组成[4]引用 前面的话 javascript中的难点是函数.对象和继承,前面已经介绍过函数系列.从本系列开始介绍对象部分,本文是该系列的第一篇——初识对象 对象定义 javascript的基本数据类型包括undefined.null.boolean.string.number和object.对象和其他基本类型值不同的是,对象是一种复合值:它将许多值(原始值或者其他对象)聚合在一起,可通过名字访问这些值 于是,对象也可看做是属性的无序集合,每个属性都是一个

深入理解javascript作用域系列第一篇——内部原理

× 目录 [1]编译 [2]执行 [3]查询[4]嵌套[5]异常[6]原理 前面的话 javascript拥有一套设计良好的规则来存储变量,并且之后可以方便地找到这些变量,这套规则被称为作用域.作用域貌似简单,实则复杂,由于作用域与this机制非常容易混淆,使得理解作用域的原理更为重要.本文是深入理解javascript作用域系列的第一篇——内部原理 内部原理分成编译.执行.查询.嵌套和异常五个部分进行介绍,最后以一个实例过程对原理进行完整说明 编译 以var a = 2;为例,说明javasc