var users = [{name:”zhangsan”,age:18},{name:”jack”,age:20}];
这是一个对象数组。如果我们要查询名字为”jack”用户的年龄、常用的办法是什么?
很多同学会想到遍历这个数组。

我们来看看新的语法:

var getUser = users.find(function(finder){
return finder.name = "jack"
});
1
2
3
注意
1.这种新的语法目前被纳入了ES2015;
2.但是我之前使用的babel转换器只会转化新的句法,对一些API不转化。请查看http://babeljs.io/#polyfill (我们之前的Promise也是);
3.同时你如果要直接在网页中赤裸裸的写这种代码,那么有些浏览器是不兼容的。这时babel-polyfill库就产生了。它起到了一个”修补”作用;
比如你执行了find方法,如果浏览器不支持,它就会自动帮你处理为”循环遍历”;
4.这就好比jquery修补了ajax(针对不同的浏览器启用不同的xmlhttp对象)。

那么如何使用babel-polyfill这个工具呢?
安装:$ npm install --save-dev babel-polyfill
然后我们引入

<script src="node_modules/babel-polyfill/dist/polyfill.min.js"></script>
1
var users = [{name:"zhangsan",age:18},{name:"jack",age:20}];
var getUser = users.find(function(finder){
return finder.name = "jack"
});
console.log(getUser.age);
1
2
3
4
5
这样就兼容浏览器了

转载于:https://www.cnblogs.com/Jeely/p/11130364.html

为什么要用PolyFill(JS中的修补匠)相关推荐

  1. js中的转译_JavaScript中的填充和转译

    js中的转译 JavaScript is rapidly advancing. Today it's the most popular programming/scripting language t ...

  2. js中当等于最小值是让代码不执行_从浏览器多进程到JS单线程,JS运行机制最全面的一次梳理...

    前言 见解有限,如有描述不当之处,请帮忙及时指出,如有错误,会及时修正. ----------超长文+多图预警,需要花费不少时间.---------- 如果看完本文后,还对进程线程傻傻分不清,不清楚浏 ...

  3. [转]JavaScript/Node.JS 中的 Promises

    JavaScript Promises 初体验 Promise 是什么? Promise 对象用来进行延迟(deferred) 和 异步(asynchronous) 计算. 一个 Promise 处于 ...

  4. JS中使用FormData上传文件、图片的方法

    参考博客:http://www.cnblogs.com/xiaohuochai/p/6543019.html http://www.cnblogs.com/qcloud1001/p/6839541.h ...

  5. 在js中使用HashMap数据结构,在js中使用K,V数据结构

    首先是定义一个HashMap方法,做基类(复制在js中即可,然后引用) //简单的哈希表,begin function HashMap() {/** Map 大小 * */var size = 0;/ ...

  6. [JavaScript] 探索JS中的函数秘密

    函数长啥样? 把一些要重复使用的内容封装到函数内. function foo(title) {console.log(title) } foo('title') foo('dust') foo('he ...

  7. 在node.js中,使用基于ORM架构的Sequelize,操作mysql数据库之增删改查

    Sequelize是一个基于promise的关系型数据库ORM框架,这个库完全采用JavaScript开发并且能够用在Node.JS环境中,易于使用,支持多SQL方言(dialect),.它当前支持M ...

  8. 在JS中最常看到切最容易迷惑的语法(转)

    发现一篇JS中比较容易迷惑的语法的解释,挺有用的,转载下,与大家分享: js中大括号有四种语义作用 语义1,组织复合语句,这是最常见的 Js代码  if( condition ) { //... }e ...

  9. js去el的map_转:el表达式获取map对象的内容 js中使用el表达式 js 中使用jstl 实现 session.removeattribute...

    原文链接: 总结: el表达式获取map对象的内容 后端: HashMap map1 = new HashMap(); map1.put("key1","lzsb&quo ...

最新文章

  1. 策马扬鞭,踏上新征程。
  2. PTA浙大版python程序设计题目集--第3章-5 字符转换 (15 分)
  3. Java图书管理系统练习程序(四)
  4. c语言:malloc函数的简介
  5. VASP服务器第一次安装各种软件(上)
  6. Node.js 将MEGA网盘的指定目录下载并打包成ZIP
  7. gbk、utf-8,这都是啥玩意儿? “Python编码“ 最全的教程来了
  8. oracle12c cdb修改,ORACLE 12C 新特性CDB及PDB
  9. 腾讯开源|TAT Agent-助力轻松完成云服务器运维管理任务
  10. MySQL基础——多表查询
  11. GitLab使用中的403错误
  12. 在Unity中实现体素化
  13. Apicloud中在frame中加载数据未完成时显示加载进度条
  14. Android 执行 ping ip 命令是否通的代码
  15. MySQL基础(二十八)索引优化与查询优化
  16. 客户案例-Vibration Research
  17. X79 – E5 1620 1620v2 黑苹果10.15
  18. 隐形守护者服务器维护,隐形守护者更新公告一览 隐形守护者更新3.5有什么内容_游侠网...
  19. 市场疲软谁能跨越周期,复苏之后谁将胜者为王?
  20. TYVJ1288 飘飘乎居士取能量块

热门文章

  1. putty小键盘输入_putty或xshell上用vi/vim小键盘无法使用的解决方法-阿里云开发者社区...
  2. csr8811蓝牙芯片porting总结
  3. 软件变异体测试(mutation test)
  4. Spark 列转行操作
  5. NETPLIER: Probabilistic Network Protocol Reverse Engineering from Message Traces代码复现记录
  6. Goland环境下同一个package下出现undefined
  7. C#工控上位机实例_工控学习,搞工控的到底什么是上位机,什么是下位机?
  8. Prometheus监控告警搭建(一)
  9. windows10录屏怎么压缩?几个步骤轻松掌握
  10. 论文解读:Generated Knowledge Prompting for Commonsense Reasoning