zoukankan      html  css  js  c++  java
  • 关于es5的一些新方法

    1.数组方法
    (1)isArray
    在之前我们判断数组类型的数据都是用instanceof来判断的,es5新增了对数组的判断,即Array.isArray()
    (2)every和some
    这两个方法一般用于对数组过滤,并返回boolean值,
    every方法对应于要求数组中所有元素都符合要求,而some是只要有一个符合就返回true,二者的使用方法一致。
    var flag = array.every(function(value, index, fullValue){
    return value>5;//这里可以写筛选条件
    });
    (3)forEach
    这个类似于jQuery中的$.each();但是注意的是参数的不同,二者的索引和子集位置相反
    array.forEach(function(value, index, fullArray){

    });
    (4)map
    这个方法可以通过遍历一个数组来返回一个新的数组,并且可以对数组每一项进行修改
    var newArray = array.map(function(value, index, fullArray){

    });
    (5)filter
    对数组进行过滤,并返回符合条件的数组,这个方法可以看做缩减版的map方法
    var newArray = array.filter(function(value, index, fullArray){
    return value>5;//过滤条件
    });
    2.对象方法
    (1)Object.preventExtensions()和Object.isExtensible()
    这两个方法,前者用于对象的锁定,即Object.preventExtensions(obj),obj对象无法再添加新的属性和方法,对象无法继续扩展,而Object.isExtensible用于检测对象是否被锁定。
    例:var obj = {
    a: 1
    };
    Object.preventExtensions(obj);
    obj.b = 2;
    console.log(obj);//输出{a:1}
    (2)Object.freeze()和Object.isFrozen()
    这个两个方法,前者用于更进一步锁定对象,也就是说对象的原有值无法改变,当然也无法删除,而后者检测对象是否具有这个属性。
    (3)Object.getOwnPropertyDescriptor()
    var obj = {
    name:'javascript'
    }
    (4)Object.getOwnPropertyDescriptor(obj, "name");
    //返回如下
    {
    configurable:true,
    enumerable:true,
    value:'javascript',
    writable:true
    }
    这里返回的值可以用Object.defineProperty()来设定。而Vue的双向数据绑定也用的这一点,具体在我之前的写的博客中有(http://www.cnblogs.com/Upton/p/5969475.html)。
    (5)Object.keys()
    可以获取所有的对象key值
    (6)Object.create()
    可以创建一个对象的副本,类似于复制对象,对于继承有一定意义。
    var person = {
    name:"javascript"
    };
    var p1 = Object.create(person);

  • 相关阅读:
    DIY 作品 及 维修 不定时更新
    置顶,博客中所有源码 github
    openwrt PandoraBox PBR-M1 极路由4 HC5962 更新固件
    使用 squid 共享 虚拟专用网至局域网
    第一次参加日语能力测试 N5
    libx264 libfdk_aac 编码 解码 详解
    开发RTSP 直播软件 H264 AAC 编码 live555 ffmpeg
    MFC Camera 摄像头预览 拍照
    http2 技术整理 nginx 搭建 http2 wireshark 抓包分析 server push 服务端推送
    plist 图集 php 批量提取 PS 一个个切
  • 原文地址:https://www.cnblogs.com/Upton/p/6025059.html
Copyright © 2011-2022 走看看