Object.assign() 之 IE 兼容 (TypeError: 对象不支持“assign”属性或方法)

Posted wen233

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Object.assign() 之 IE 兼容 (TypeError: 对象不支持“assign”属性或方法)相关的知识,希望对你有一定的参考价值。

 直接复制拿去IE大佬上面用一下就可以了,兄嘚。

// IE 兼容方法
if (typeof Object.assign != ‘function‘) 
  Object.assign = function(target) 
    ‘use strict‘;
    if (target == null) 
      throw new TypeError(‘Cannot convert undefined or null to object‘);
    

    target = Object(target);
    for (var index = 1; index < arguments.length; index++) 
      var source = arguments[index];
      if (source != null) 
        for (var key in source) 
          if (Object.prototype.hasOwnProperty.call(source, key)) 
            target[key] = source[key];
          
        
      
    
    return target;
  ;


// 以下为测试代码
var target =  a: 1, b: 2 ;
var source =  b: 4, c: 5 ;

var returnedTarget = Object.assign(target, source);

console.log(target);
// expected output: Object  a: 1, b: 4, c: 5 

console.log(returnedTarget);
// expected output: Object  a: 1, b: 4, c: 5 

 

以上是关于Object.assign() 之 IE 兼容 (TypeError: 对象不支持“assign”属性或方法)的主要内容,如果未能解决你的问题,请参考以下文章

Vue项目之IE下打开页面是空白

Babel Preset 在 IE11 上不为 Object.assign 提供支持 - “对象不支持属性或方法‘assign’”

json赋值工具 Object.assign()

ES6之Object.assign()详解

ES6之Object.assign()详解

javascript学习总结之Object.assign()方法详解