ECMAScript 数据类型  标准  核心

 

数据类型

typeof  判断数据类型

数字型 布尔型 对象类型 函数 字符串 undefined 未定义

数字型  字符型

var s=’1233’  空格也算

charAt()  获取子字符串的方法

s.length          =4

s.charAt(3)     =3

boolean布尔值:true false

多用于判断  真的条件就是true 继续执行  不是则不执行

for也又布尔值的 身影 当符合条件之后就是true了

函数类型

函数类型 function 函数 调用 时候要用一个括号

var fn=function(){alert(1);};

function fn1 (){alert(2);};

对象

obj.ab

------------------

c=123;

对象可以添加自定义属性 ,可以等于一个函数

obj.fn1=function(){xxxxxxxxxxxx}

obj.fn1();  添加方法

------------------

数组var arr=[a,b,c,d,e,f];

arr.push(5,6,7) 给数组加东西 

数组也是一个object;

可以添加自定义属性方法

arr.abc=999;

------------------

json存放数据

------------------

null就是空 没有自定义属性没有任何属性 是一个对象 一个空的对象

------------------

undefined 未定义

更多的时候是程序出问题了  一种状态 
------------------------------------------------------------------------------------------------------------

强制数据类型转换

字符串转化成数字的方法:

Number ();方法   

1.看起来像数字的字符串转化成数字

2.字符串 空和空格 都会转化成0;

3.true –>1  false-> 0

4.不能转的是NaN (函数 object )

5.空数组转化成0  数组是空字符串也是0  数组里面的数字 也能转 [‘013’]=013数组里东西多了也报NaN

6.json 无能为力 空的也不能转 NaN

7.null转化成0

8.undefined NaN

总结: 字符串类型的数字 空字符串 null 布尔  单个array  都能转化

var b=’100px’ Number不能转化

------------------------------------------------------------------------------------------------------------

parseInt();方法

截断型转换

parseInt(b,10)  后面数字是十进制

100px1000000

p以后的所有数字都干掉~

结果100;

认识正负号  过滤0  空格

不认识布尔 不认识小数

 

parseFloat();方法

比parseInt方法

多认识一个小数点

当两个方法的值一个样的时候  ===就可以判断是整数还是小数

------------------------------------------------------------------------------------------------------------

隐式类型转换

‘200’-3=197
- * % / 可以  ++ -- > < <=  >= 

取模 求余数【!取反】//取反是布尔值
== 和=== 三个等号是全等  是  数据类型转换的问题 两个就忽略了

alert("10">9);   //true

alert("10">"9");  //false 

alert("10000000">"9"); //false

字符串比较的时候按照编码比较 比的是编码

比较的是一位一位的 第一位干不过后面就干不过了

单个数字pk  9大于任何一个位数

有一个共性 就是无法转换就会  NaN

------------------------------------------------------------------------------------------------------------

NaN

 

NaN

not  a  number

程序出现NaN就是出现非法运算的操作

NaN特性  他不等于 任何东西 包括本身

是Number类型不是数字

布尔值是false

isNaN();

一个方法
isNaN();  用来判断值是不是数字类型的   如果 见到了数字就烦  false

布尔类型也会转化成数字  false

内部是根据number转化的结果 也就是内置 number依靠number进行转化
isNaN  讨厌数字  false  不讨厌NaN  true

讨厌数学(Number) 不讨厌数学系的,萌妹子(NaN);

只要是 HTML中的文本  各种属性值  类型默认全是字符串 不能直接用typeof判断

就可以用isNaN做判断 

两个练习:

1.数组里找东西

2.qq号码

javascript_04 数据类型的更多相关文章

  1. JavaScript 中的数据类型

    Javascript中的数据类型有以下几种情况: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Function,Date,Ar ...

  2. JS 判断数据类型的三种方法

    说到数据类型,我们先理一下JavaScript中常见的几种数据类型: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Functi ...

  3. Python高手之路【二】python基本数据类型

    一:数字 int int(整型): 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值 ...

  4. UniqueIdentifier 数据类型 和 GUID 生成函数

    UniqueIdentifier 数据类型用于存储GUID的值,占用16Byte. SQL Server将UniqueIdentifier存储为16字节的二进制数值,Binary(16),按照特定的格 ...

  5. SQL Server常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅. 1.整数类型 int 存储范围是-2,147,483,648到2,147,483 ...

  6. 由js apply与call方法想到的js数据类型(原始类型和引用类型)

    原文地址:由js apply与call方法想到的js数据类型(原始类型和引用类型) js的call方法与apply方法的区别在于第二个参数的不同,他们都有2个参数,第一个为对象(即需要用对象a继承b, ...

  7. python 数据类型 ----字典

    字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...

  8. SQL数据类型

    1.Character 字符串: 数据类型 描述 存储 char(n) 固定长度的字符串.最多8,000个字符. n varchar(n) 可变长度的字符串.最多8,000个字符.   varchar ...

  9. 跟着老男孩教育学Python开发【第二篇】:Python基本数据类型

    运算符 设定:a=10,b=20 . 算数运算 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 基本数据类型 1.数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**3 ...

随机推荐

  1. DPDK多核多线程机制简析

    DPDK通过在多核设备上,创建多个线程,每个线程绑定到单独的核上,减少线程调度的开销,以提高性能. DPDK的线程分为控制线程和数据线程,控制线程一般绑定到MASTER核上,主要是接受用户配置,并传递 ...

  2. ASP.Net MVC 5 高级编程 第7章 成员资格、授权和安全性

    第7章 成员资格.授权和安全性 7.1 安全性 ASP.NET MVC 提供了许多内置的保护机制(默认利用 HTML 辅助方法和Razor 语法进行 HTML编码以及请求验证等功能特性,以及通过基架构 ...

  3. POJ C程序设计进阶 编程题#5:细菌分组实验

    编程题#5:细菌实验分组 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: 1000ms 内存限制: 65536kB 描述 有 ...

  4. CentOS下安装LNMP(LINUX+NGINX+MYSQL+PHP)环境

    一.安装Nginx最新版 首先查看是否有安装源包 yum list nginx  (或yum info nginx) 如果没有则 vi /etc/yum.repos.d/nginx.repo #添加如 ...

  5. Win+R快速打开你的应用程序

    参考自:http://blog.csdn.net/nothing0318/article/details/7179405 1:在你的磁盘任意位置创建一个文件夹,比如C:MyShortcut,然后将你的 ...

  6. JLink V8初始化exynos4412脚本

    /** ****************************************************************************** * @author    Maox ...

  7. django-url调度器-中级篇

    在初级篇中,我们接触了: 1.url 的简单编写 2.两种传参的方式 3.捕获的参数总是字符串 4.为视图设置默认参数 …… 在中级篇中将更进一步. 包含其它的URLconfs 当网站非常大的时候,将 ...

  8. HTML5 API 之 history

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  9. jquery的异步获取返回值为中文时乱码解决方法

    用jqgrid异步获取列表值,遇到个问题,服务器端从数据库取到的数据没有出现中文乱码问题(日志打出来是没有乱码的),但是异步传到客户的时候却出现了乱码. 服务器端已经编码过了(UTF-8编码).开始一 ...

  10. android开发系列之多线程

    今天在这篇博客里面,我只想谈谈自己对程序开发里面避无可避的一个问题-多线程的一些看法与思考. 其实说到多线程这个名称相信只要接触过软件这个行业的人都已经耳熟能详了,但是如果被问到到底什么才是多线程呢? ...