一、基本数据类型

  1、字符类型:表示字符的类型,例:'aaa',"aaaa",'123456',''(空字符)

  2、数字类型:表示数字的类型,例:0,1,3.1415936等

      特殊数字类型:Infinity无限大,对应-Infinity表示数字无限小

             NaN(Not a Number),NaN是个特殊的数字类型不于任何数字相等,与自己也不相等,只能通过isNaN()判断该值。

  3、布尔类型:表示真假的值,只有true,false两个值。

二、复合数据类型

  1、数组:数据元素的组合,包括元素和下标组成(下标从0开始编号)。

      数组运算符是[],可以通过[]进行元素读取、赋值操作。

  2、对象:对象是数据的集合,数据可以为基本类型,复合类型。

       对象有属性和方法,例:document.write()是方法操作. document.fgColor是属性。

三、特殊数据类型

  1、函数:可以执行的代码块,可以一次定义多次执行。

       可以定义一个或多个参数,调用时参数数目可不相等。

       可以返回值,也可以不返回值

  

  2、null:空类型,该类型非基础类型、非复合类型,就是一个空。

  3、undefined:未定义类型

四、数据类型转换

  1、空、0,null.undefined为bool时为false,其余为true.

  2、纯数字串可以转换为数字,否则转换为NaN,或者是部分数字。

  3、布尔值可转数字,true转为1 ,false转为0,转字符串时加引号。

  4、null转数字时为0,undefined转数字时为NaN.

五、直接量

  1、直接量:在程序中直接显示出来的量,包括字符串直接量、数字直接量等,所有数据类型都有直接量。

    1.1、字符串直接量:使用成对的"或'引起来的量。\是转义字符可以转义各种特殊字符。例如\'表示转义后的',此处'是一个普通的字符不属性字符串开始结束标志。

    1.2、数字直接量如var b=20,此处20就是数字直接量。数字直接量包括多种:十进制、八进制、浮点类等。

    1.3、布尔直接量true,false;

    1.4、数组直接量,表示数组内容的直接量,例:[10,"aabc",,true].

    1.5、函数直接量,没有函数名称的函数变量如:var  myFun=function(a,b){a+b},此处即为函数直接量。

    1.6、对象直接量:var obj= {"name":”mopheify","age":20};

    1.7、特殊直接量:var nullobj=null为特殊null直接量。var undefinedobj=undefined为undefined直接变量。

六、变量

  1、变量顾名思义会改变的量,用于存放数据的容器。

    1.1、以字母、下划线(_)或美元符号($)开头,后跟字母、数字、下划线(_)或美元符号($)。不能有空格、其他标点。

    1.2、区分大小写,var name="";和var NAme=""是两个完全不同的变量。

    1.3、不能与保留字相同。

    1.4、命名规则: Pascal命名所有单词首字母大小。例:UserName,MyHat

            Camel命名除第一个字母小写外,所有单词首字母大写。userName,myHat

            匈牙利命名:与Pascal一样,不过在变量前添加小写类型缩写以表明数据类型。

  

  2、变量是无类型或者是弱类型:例var x=0;x="字符串";即x的类型随值变化。

  

  3、变量有作用域:全局变量、局部变量。

    3.1、使用var定义的变量变量范围与定义是范围有关,不定义直接使用的变量作用范围为全局的。

    3.2、变量注意事项:a)、尽量先定义再使用。b)、可以为未定义变量赋值待操作(此时变量为全局变量)

  

  4、变量随处定义,与定义平行的范围内均有效,只是在定义前使用值为undefined不为null;

  5、变量可以多次定义 例var myname='name1'; var myname=5;等。每个定义均为有效定义。

      

七、常量

  

  1、使用const修饰定义的量为常量 例:const myname="mopheify";

  2、常量定义后值不会改变。如果为上面myname="newName",赋值无效,此时值仍为mopheify.

  3、常量不能重复定义

  4、变量名不能与常量名重复否则报错。

Javascript基础--数据类型的更多相关文章

  1. JavaScript基础——数据类型

    JavaScript使用数据类型来确定如何处理被分配给一个变量的数据.变量的类型决定了你可以对变量进行什么操作,如循环或者执行.下面描述了最常用的变量类型. 字符串(String):此数据类型将字符数 ...

  2. javascript基础数据类型与引用类型

    javascript一共有6种数据类型 有5种基本类型:Null,String Number,Boolean,Undefined 和一种引用类型Object 基础类型在内存中存在于栈空间中,例如 va ...

  3. JavaScript基础数据类型(一)

    动态类型 JavaScript 是一种弱类型或者说动态语言.这意味着你不用提前声明变量的类型,在程序运行过程中,类型会被自动确定.这也意味着你可以使用同一个变量保存不同类型的数据: var foo = ...

  4. JavaScript基础数据类型

    一.数值 1.JavaScript不区分整型和浮点型,就只有一种数字类型 2.还有一种NaN,表示不是一个数字(Not a Number) eg: parseInt("ABC")  ...

  5. JavaScript基础系列目录(2014.06.01~2014.06.08)

    下列文章,转载请亲注明链接出处,谢谢! 链接地址: http://www.cnblogs.com/ttcc/tag/JavaScript%20%E5%9F%BA%E7%A1%80%E7%9F%A5%E ...

  6. JavaScript基础:数据类型的中的那些少见多怪

    原文:JavaScript基础:数据类型的中的那些少见多怪 Javascript共有6种数据类型,其中包括3个基本数据类型(string,number,boolean).2个特殊数据类型(undefi ...

  7. 前端javascript基础总结(1)js的构成以及数据类型

    在日常工作中用到的原生js很少,感觉自己已经把原生的js忘光了,在这里开始总结下js,就从最基础的开始吧!!! JavaScript的组成: 1.ECMAScript:解释器,翻译. 个人理解为就是解 ...

  8. 初识 Javascript.01 -- Javascript基础|输出方式、变量、变量命名规范、数据类型、

    Javascript基础 1 聊聊Javascript 1.1 Javascript的历史来源 94年网景公司   研发出世界上第一款浏览器. 95年 sun公司   java语言诞生 网景公司和su ...

  9. javascript基础语法备忘录-变量和数据类型

    //javascript基础语法备忘录-变量和数据类型 // 定义变量使用var关键字 后面跟变量名,不要使用eval 和arguments为变量名 var message = "hi&qu ...

随机推荐

  1. linux线程池

    typedef struct task_node { void *arg; /* fun arg. */ void *(*fun) (void *); /* the real work of the ...

  2. CF385C Bear and Prime Numbers 数学

    题意翻译 给你一串数列a.对于一个质数p,定义函数f(p)=a数列中能被p整除的数的个数.给出m组询问l,r,询问[l,r]区间内所有素数p的f(p)之和. 题目描述 Recently, the be ...

  3. 【转】C#中HttpWebRequest的GetRequestStream执行的效率太低,甚至偶尔死掉

    http://www.cnblogs.com/summer_adai/archive/2013/04/26/3045261.html

  4. 16.Shortest Unsorted Continuous Subarray(最短未排序子数组)

    Level:   Easy 题目描述: Given an integer array, you need to find one continuous subarray that if you onl ...

  5. 小程序scroll-view采坑

    scroll-view分为水平滚动和垂直滚动.注意滚动视图垂直滚动时一定要设置高度否则的话scroll-view不会生效.

  6. shell学习(12)- jq

    jq命令允许直接在命令行下对JSON进行操作,包括分片.过滤.转换等 ,jq是用C编写,没有运行时依赖,所以几乎可以运行在任何系统上.预编译的二进制文件可以直接在Linux.OS X和windows系 ...

  7. Django 09 博客小案例

    Django 09 博客小案例 urls.py from django.urls import path from . import views urlpatterns = [ path('index ...

  8. ueditor chrome bug

    一.概述: 关于UEditor在谷歌浏览Chrome打开选择指上传图片,发现[点击选择图片]时无法立即弹出选择框,而是等4-7秒钟才显示出来的BUG,试了N多方法,改层级都用了,也无效.在网上找到了一 ...

  9. 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_高级管理控制(配置)

    一个应用程序的XML配置文件示例: <?xml version="1.0"?> <configuration> <runtime> <as ...

  10. Codeforces 277E

    按边建模,二叉树一条入边两条出边 判断就要用到mcmf的好处了 #include<bits/stdc++.h> using namespace std; const int maxn = ...