zoukankan      html  css  js  c++  java
  • JS基本的数据类型

    js的基本数据类型有6种:Number,String,Boolean,Object,Null,Undefined
    ES6新增1种:Symbol

    Number

    Number 类型

    • 整数
      • 15(十进制)var num = 10;//10
      • 0377(八进制)var num = 070;//56
      • 0xff(十六进制)var num =
    • 浮点数
      • 1.2 var num = 3.141592653;
      • 1.4E2(科学计数法) var num = 3.14e2;
    • 特殊值
      • NaN(Not a Number)
      • Infinity(无限大)var num = 1/0;//Infinity

    ES6中:isNaN函数,isFinite函数,parseInt函数,parseFloat函数被移植到Number对象上了.

    Number.parseInt

    /* 字符串化为整型:parseInt(string,radix) */
    Number.parseInt('1.1');//1
    Number.parseInt('1.9');//1
    Number.parseInt('1b2.4');//1
    Number.parseInt('www');//NaN
    
    /*进制转换: 该函数的第二个参数表示字符串所表示的数字的进制*/
    parseInt('11', 2)//3
    
    /* + :也可以把数字字符串转换成数值*/
    + '42'; //42
    + '010';//10
    + '0x10';//16
    

    Number.parseFloat

    /* 字符串化为保留小数点:pareFloat(string) */
    Number.parseFloat('100.1');//100.1
    Number.parseFloat('12.4b5');//12.4
    Number.parseFloat('www');//NaN
    

    Number.isNaN:

    Number.isNaN(2.5);//false
    
    isNaN('abc');//true
     //'abc'无法转为一个数值,返回true
    
    Number.isNaN('abc'); //结果:false
    //'abc'是字符串,Number.isNaN不做类型转换,直接返回false
    

    Number.isFinite:

    用来检查一个数值是否非无穷。注意是判断非无穷,不是判断无穷

    Number.isFinite(1);//true 有限
    Number.isFinite(Infinity);//false  Infinity表示无穷大的特殊值
    Number.isFinite('abc');//false  不做类型转换,直接false
    

    Number.isInterger():用来判断是否是整数

    Number.isInterger(3.2);//false
    Number.isInterger(3);//true
    Number.isInterger(3.00);true
    

    Number.EPSILON常量:定义一个极小值

    console.log(Number.EPSILON);
    //结果:2.220446049250313e-16
    

    Number.isSafeInterger():安全整数

    JavaScript能够准确表示的整数范围在-253到253之间,
    最大值和最小值:Number.MAX_SAFE_INTEGER和Number.MIN_SAFE_INTEGER。

    Number.isSafeInterger(Number.MAX_SAFE_INTEGER);//true
    Number.isSafeInterger(Number.MAX_SAFE_INTEGER+1);false
    

    String

    放在双引号或者单引号中的值类型就是string类型

    var name = "hello";//双引号
    var name = 'july';//单引号
    

    boolean

    Boolean类型只有两个值,truefalse;

    var sex = true;
    if(sex){
        document.write('male');
    }else{
        document.write('female');
    }
    

    Object

    Object(对象)是一组无序的名值对的集合;

    /* 把一个对象实体赋值给一个变量`cat` */
    var cat = {
        name:'kitty',//名值对之间是`逗号`隔开的
        age:2,
        mew:function(){
            console.log('miao miao miao');
        }
    }
    /* 用`new`方法,定义一个新的对象 */
    var dog = new Object();
    

    Null

    Null类型的值只有一个null,出现这个值的意思是对象不存在;
    var car = null;

    Undefined

    Undefined类型只有一个值undefined;

    出现的场景有二:已声明未赋值的变量获取对象不存在的属性

    Symbol

    ES6新增:为了解决属性名冲突

    let sm = Symbol();
    console.log(sm)//Symbol() 意思是它是独一无二的
    

    类型识别-typeof

    var num;
    typeof num;//undefined
    var num = 1;
    typeof num;//number
    var num = '1';
    typeof num;//string
    var num = true;
    typeof num;//boolean
    var num = null;
    typeof num;//object
    let sm = Symbol();
    typeof(sm);//symbol
    

    原始类型和引用类型

    JS的6中基本数据类型,Number,String,Boolean,Undefined,Null原始类型;而Object引用类型

    原始类型的数据赋值后,就形成了对应的名值对;

    引用类型的数据赋值时,只是把一个值的地址赋予了一个变量;

    /* 原始类型 */
    var num1 = 123;
    var num2 = num1;
    num2 = 456;
    console.log(num1);//123
    
    /* 引用类型 */
    var obj1 = {a:1,b:2};
    var obj2 = obj1;
    obj2.a = 3;
    console.log(obj1.a);//3
    
  • 相关阅读:
    UIKit框架-高级控件Swift版本: 5.UITextView方法/属性详解
    UIKit框架-高级控件Swift版本: 3.UITableViewCell方法/属性详解
    UIKit框架-高级控件Swift版本: 2.UITableView方法/属性详解
    UIKit框架-高级控件Swift版本: 4.UICollectionView方法/属性详解
    UIKit框架-高级控件Swift版本: 1.UIScrollView方法/属性详解
    UIKit框架-基础控件Swift版本: 6.UITextField方法/属性详解
    UIKit框架-基础控件Swift版本: 5.UIImage方法/属性详解
    UIKit框架-基础控件Swift版本: 4.UIImageView方法/属性详解
    UIKit框架-基础控件Swift版本: 3.UILabel方法/属性详解
    UIKit框架-基础控件Swift版本: 2.UIButton方法/属性详解
  • 原文地址:https://www.cnblogs.com/luwanlin/p/14254215.html
Copyright © 2011-2022 走看看