zoukankan      html  css  js  c++  java
  • javascript_04 数据类型

    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号码

  • 相关阅读:
    常见HTTP状态(304,)
    面试错题集
    从零构建以太坊(Ethereum)智能合约到项目实战——学习笔记1
    windows 以太坊开发框架Truffle环境搭建
    Ollydbg使用问题汇总
    网络攻防实战技术之——缓冲区溢出篇
    如何批量删除.svn文件
    树莓派安装nextcloud、Seafile
    汇编语言从入门到精通-5微机CPU的指令系统2
    kali安装vm tools正确操作
  • 原文地址:https://www.cnblogs.com/aix1314/p/3956358.html
Copyright © 2011-2022 走看看