一、 IE:对象不支持startsWith
利用 react + redux + webpak 实现了一个mini项目。在项目快做完需要处理兼容性的时候却发现有一个坑爹的问题,项目在火狐和Chrome上都可以正常的使用,但是却不能兼容IE(IE11)。
打开控制台刷新浏览器会变成这个样子,并且很奇怪没有生成对应的dom树,但是还好有报错:
放大一下报错信息,它的报错信息是 “对象不支持startsWith”
那么startsWith?
由于不确定startsWith的用处,我在ecmascript里查了查,并且百度了string.prototype.startsWith
备注:
startWith是用于判断当前字符串是否以 anotherString 作为开头,与它对应的是endsWith,用于判断是否以某字符串作为结尾。
EG:
"imsohappy".startsWith("im") //true
"imsohappy".startsWith("y") //false
"imsohappy".endsWith("im") //false
"imsohappy".endsWith("y") //true
于是引入 corejs 提供polyfill方案( 有些方法你不支持,Polyfill使用你支持的方法帮你实现了这些你不支持的方法。)
翻译过来就是corejs是js的模块化和标准化库,它为ECMAScript 5,ECMAScript 6:promises, symbols, collections, iterators, typed arrays,以及ECMAScript 7的等等提供了polyfills。
所以 引入core-js 可以解决这个问题。
再总结就是, 有人把写的一堆实现方法*(包括如何用低版本的js实现高版本的js的方法),总结成一个库就是corejs
备注:
后来查了网页和博客, 发现startWith是2015年语言规范里更新的,在规范里强调浏览器应该自带这个方法,之后chrome 在下个发行版本里就加上了,但是2015年之前的chrom版本就没有,而ie始终不支持

IE兼容性问题处理( 对象不支持startsWith )相关推荐

  1. ie 浏览器对象不支持“replaceAll”属性或方法

    使用 replaceAll() 替换变量在 Chrome 浏览器中可以正常使用,在 IE 浏览器中报错[对象不支持 replaceAll 属性或方法] js 没有 replaceAll() 方法,jQ ...

  2. 对象不支持createPopup属性或方法

    异常: js弹框:对象不支持"createPopup"属性或方法 解决: step1,IE浏览器"工具"->兼容性视图设置->添加此网站 step2 ...

  3. ie8 script445: 对象不支持此操作_经验总结:上海增值税认证勾选安装和操作步骤...

    [准备工作] 1.操作系统是Win7 64位 32位都可以! 2.IE8.IE9 (IE10.IE11 请参阅第五部分:兼容性视图设置 ),不支持第三方IE 3.航天(或百旺)金税器 一.下载控件和证 ...

  4. js错误:对象不支持此属性或方法

    对象不支持此属性或方法 错误原因: 可能是js的文件名和另外一个文件重复. 也有可能是js里的function和另外一个function名字重复. 也有可能是js里的function和页面的某一元素重 ...

  5. 解决IE10以下对象不支持“bind“属性或方法

    IE10一下的浏览器,如果在JS代码中用了bind函数,那么就会报"SCRIPT438: 对象不支持"bind"属性或方法" 因为浏览器没有提供这个参数的方法, ...

  6. C++自定义对象如何支持Range-based循环语法

    自定义对象如何支持Range-based循环语法 至少实现以下两种语法: //返回第一个迭代子的位置 Iterator begin() //返回最后一个迭代子的下一个位置 Iterator end() ...

  7. 对象不支持属性或方法dbzz.html,JavaScript 中 setTimeout()的用法 ZZ

    第一篇 setTimeout()在js类中的使用方法 setTimeout (表达式,延时时间) setTimeout(表达式,交互时间) 延时时间/交互时间是以豪秒为单位的(1000ms=1s) s ...

  8. Error in v-on handler: “TypeError: 对象不支持“set”属性或方法“

    Error in v-on handler: "TypeError: 对象不支持"set"属性或方法" FormData.set() 所有IE不兼容 MDN-F ...

  9. 常见错误:JavaScript 提交form 的时候,Error:对象不支持此属性或方法

    form submit() Error:对象不支持此属性或方法 无论用document.forms[0].submit() 还是其他方式,均报此错误 说明form中有名字叫做submit的元素,一般为 ...

最新文章

  1. [原]消耗CPU资源的shell脚本
  2. JS特效——黑客效果JS代码(摘取)
  3. 一维数据高斯滤波器_透彻理解高斯混合模型
  4. 算法题指南书_分类算法指南
  5. YbtOJ#593-木棍问题【费用流】
  6. 拒绝了对对象 'sp_sdidebug'(数据库 'master',所有者 'dbo')的 EXECUTE 权限
  7. (三)Neo4j自带northwind案例--Cypher语言应用
  8. 点击开启此虚拟机时,出现“该虚拟机似乎正在使用中”问题
  9. livechart 只显示 y 值_【科研工具51】谷歌,谷歌学术,Scihub有效网址检索软件——Y学术...
  10. 通过select选项动态异步加载内容
  11. KafkaProducer介绍
  12. linux php ldap_linux php ldap安装配置的方法
  13. httpinvoker
  14. pyinstaller 用法
  15. 从内容打到社交,头腾大战矛头又指向了游戏
  16. 如何获取免费的数字货币历史数据
  17. LeetCode - 441 - 排列硬币(arranging-coins)
  18. cannot enlist more than one non-XA resource
  19. python学习笔记:插入函数append,extend与insert的使用与区别
  20. 完整好用Dynasim.Dymola.v7.0动态系统仿真建模软件,广泛用在汽车,航空,航天等领域

热门文章

  1. 2018 前端性能优化清单
  2. 黄俊滔:没有人能够打败趋势,将会有大规模公司倒闭
  3. el-table横向滚动时表头与内容串位问题
  4. 这是一份数据量达41.7万开源表格数据集
  5. 【异常记录(九)】 System.Threading.ThreadAbortException: 正在中止线程
  6. STM32的USART_GetFlagStatus和USART_GetITStatus解析
  7. Leetcode 483. Smallest Good Base [Python]
  8. Oracle的查询排序,增加总计列,或者增加总计行
  9. [java] 分布式id生成方案
  10. linux sh脚本各种数值进制转换(比如10进制转16)若干例子