js数据类型简要总结

一.js的数据类型
  1. 数据类型

    1. 值类型:undefined string number boolean symbom
    2. 引用类型:array object function
    3. typeof用法
      • typeof 简单数据类型 undefined string number boolean可以判断
      • typeof 复杂数据类型 null [] Object
  2. 强制类型转换

    • 字符串的石化 const a='10' + 10 a为字符串类型
    • == 运算符 100 == '100' null == undefined 0 == ''
    • if判断
    • 逻辑运算符 ||:不存在执行下一个console.log('' || 'abc') &&:存在执行下一个callback&&callback()
      备注
      基本都是用=严格,在obj.a == null时,代表着 abj.a=null||obj.a===undefined
    • 三目运算
      let a= tpyeof 'web' === 'string' ? 'hsc':'yk'
  3. 对象

    1. 创建对象方法

      • const obj= new Object()
      • const obj={}
    2. new的作用

      • new 构造函数() 可以在内存中创建一个空对象
      • 构造函数中this指向创建的空对象
      • 执行构造函数代码,给空对象添加方法、属性
      • return this
    3. 对象的遍历

      • for(const key in obj){console.log(obj[key])} 对象自身的和继承的可枚举属性
      • Object.keys(obj) 不含继承的所有可枚举属性
      • Object.getOwnpropertyNames(obj) 不含继承的所有可枚举属性
      • Reflect.ownKeys(obj) 对象自身的所有属性
  4. 数组

    1. 创建数组

      • var arr = [1,2,3];
      • var b = new Array(8); 设置初始长度
      • var c= new Array(‘bar’,‘foo’) 长度2 值1,值2
    2. 数组方法

      • indexof includes是否包含某个元素
      • forEach():迭代数组,速度最快
      • filter(item =>{return true|false}): 筛选数组返回一个数组
      • map(item =>{return itemEdit(修改的item或者新的item) }):调整数组,返回长度不变改变内容的数组
      • some() 用于检查数组中是否有满足条件的元素 返回true或者false
      • every() 元素是否都符合条件 返回true或false
    3. 数组去重

      1. filter去重

        var newArr = arr.filter(function(item,index){
         return arr.indexOf(item) === index;  // 因为   indexOf 只能查找到第一个  
        });
        
      2. for循环 配合indexof 或者includes 是否包含

        var newArr=[]; 
        //遍历当前数组 
        for(var i=0;i<arr.length;i++) {
         //如果当前数组的第i已经保存进了临时数组,那么跳过,
         //否则把当前项push到临时数组里面 
         if(newArr.indexOf(arr[i]) === -1) {  //indexOf() 判断数组中有没有字符串值,如果没有则返回 -1 
            newArr.push(arr[i]);
         }
        
      3. es6中new Set()去重 …结构set对象为数组
        var newArr = [...new Set(arr)];

  5. 内置函数
    Object Array Boolean Number String Function Date RegExp Error Date(备注Date now()出来是时间戳)
    内置对象
    JSON Math

  6. 简单数据类型和复杂数据类型(了解)

    1. 简单数据类型:String Number Boolean Null undefined
    2. 复杂数据类型 new 关键字() 创建
    3. Js中没有堆栈概念为了理解代码出现堆栈概念
    4. 简单数据类型直接在栈中开辟一个地址存放
    5. 复杂数据类型首先在栈中存放十六进制的地址,该地址指向堆中的数据
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值