MDN, Object.assign() के अनुसार IE और एंड्रॉयड से अभी समर्थित नहीं है के लिए उपयोग कर सकते हैं। आप 2.1 या उच्चतर की एक टाइपप्रति संस्करण स्थापित हैं, हालांकि, आप Object Spread बजाय का उपयोग कर सकते हैं:
let obj = { x: 1, y: "string" };
var newObj = {...obj, z: 3, y: 4}; // { x: number, y: number, z: number }
आप टाइपप्रति का उपयोग नहीं करना चाहते हैं, तो यहाँ एक simple polyfill जावास्क्रिप्ट में ऊपर की टाइपप्रति के रूपांतरण से है :
Object.assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
var obj = { x: 1, y: "string" };
var newObj = Object.assign({}, obj, { z: 3, y: 4 });
View on Typescript Playground
स्रोत
2017-03-10 14:33:52
आईई के साथ सावधान रहें। एमडीएन के मुताबिक यह समर्थित नहीं है। – lukeatdesignworks
एंड्रॉइड ब्राउजर इसका समर्थन नहीं करता है: http://kangax.github.io/compat-table/es6/#test-Object_static_methods_Object.assign – Chris
यदि आप कोणीय-सीएलआई का उपयोग कर रहे हैं, तो 'poyfills.ts' ढूंढें और IE9-11 का समर्थन करने वाले कोड को असम्बद्ध करें। – shammelburg