zoukankan      html  css  js  c++  java
  • js基础知识-数据类型

    一、类型判断

    1、typeof

    五种简单数据类型:Undefined Null Boolean Number  String
    一种复杂数据类型:Object
    console.log( typeof undefined, typeof true, typeof 1, typeof '1', typeof {}, typeof null)

     

    Boolean类型转换规则:

     

    Number类型基于IEEE754格式来表示整数和浮点数值

    浮点数
    数值范围
    Number.MIN_VALUE 大多数浏览器中5e-324
    Number.MAX_VALUE 大多数浏览器中1.7976931348623157e+308
    超出范围自动转换为正负infinity
    NaN,
    即非数值(not a number)是一个特殊的数值,用于标水一个本来返回数值的操作数为返回数值的情况(这样就不会抛错误了)
    ECMAScript5中,任何数值除以非数值会返回NaN(其他语言报错)
     console.log(NaN==NaN) //false
     console.log(isNaN(NaN),isNaN("bule"))//true
     console.log(isNaN(10),isNaN("10"),isNaN("10"))//false[数字10,转换为数字10,转换为1]

    数值转换
     
    3个函数可以吧非数值转换为数值:
    用于任何数据类型:Number()、
    专门用于字符串转换为数值:parseInt()和parseFloat()
    Number()函数转换规则:
    1、Boolean值true和false将分别转换1和0
    2、如果是数字只是简单的传入和返回
    3、如果是null值,返回0
    4、如果返回undefined,返回NaN
    5、如果是字符串,遵循一下规则:
    如果字符串只包含数字(包括正负号)则将其转换为十进制即“1”会变成1,“123”会变成123,
    而“011”会变成11(注意:前面0被忽略)
    如果字符串只包含浮点数如“1.1”同上,0也会被忽略
    如果字符串包含有效的十六进制格式,例如“0xf”则将其转换相同的大小的十进制整数值;
    如果字符串是空的(不包含任何字符),则将其转换为0;
    如果字符串包含除上述格式之外的字符。则将其转为NaN。
    如果是对象则调用对象的value()的方法,然后依照前面的规则转换返回的值。如果转换的结果是
    NaN,则调用对象的toString()方法,然后再将其依照前面的规则转换返回字符值。
      console.log(Number("Hello world"))
      console.log(Number(""))
      console.log(Number("000011"))
      console.log(Number(true))

     parseInt()转换空字符串返回NaN(Number()则返回0)
            parseInt转换规则:
            var num1=parseInt("123blue") // 123
            var num2=parseInt("") // NaN
            var num3=parseInt("0xA") // 10(十六进制)
            var num4=parseInt("22.5") // 22
            var num5=parseInt("070") // 56(八进制)
            var num6=parseInt("70") // 70(十进制)
            var num7=parseInt("0xf") // 15(十六进制)
            //指定基数为16作为第二个参数
            var num =parseInt("oxAF", 16)  //175
        
    String类型
    1.字符字面量
    2.字符串的特点不可变
    3、转换为字符串
    var age = 11;
    var ageStr = age.toString() // 字符串"11"
    var found = true
    var foundStr = found.toString()// 字符串"true"
    var num = 10;
    console.log(num.toString()) // "10"
    console.log(num.toString(2)) // "1010"
    console.log(num.toString(8)) // "12"
    console.log(num.toString(10)) // "10"
    console.log(num.toString(16)) // "a"
    Object 类型
    创建:
    var o = new Object()
    Object 每个实例都具有下列属性和方法:
    constructor: 保存用于创建当前对象的函数。
    hasOwnProperty(propertyName):用于检查给定的属性在当前的对象实例中(而不是实例的原型中)
    isPrototypeOf(object): 用于检查传入的对象是否是当前的对象的原型
    propertyIsEnumerable(propertyName)用于检查给定的属性是否能够使用for-in语句
    toLocalString():返回对象的字符串表示,该字符串与执行环境的地区对应
    toString(): 返回对象是字符串表示
    valueOf(): 返回对象的字符串,数值,或布尔值表示。通常与toString()方法的返回值相同
     
     
    待更新
  • 相关阅读:
    windows安装nacos
    anki处理
    minikube安装net5
    在.net core中使用属性注入
    C# 使用MD5算法对密码进行加密
    c# 获取本机系统已经安装的打印机信息
    C# 比较两个datatable并找出修改差异的值
    打印机点击打印后无反应
    GUID转换成16位字符串或19位数据(确保唯一)
    RESTful
  • 原文地址:https://www.cnblogs.com/pikachuworld/p/13929532.html
Copyright © 2011-2022 走看看