
static.js.vendor.modernizr.feature-detects.es6.promises.js Maven / Gradle / Ivy
The newest version!
/*!
{
"name": "ES6 Promises",
"property": "promises",
"caniuse": "promises",
"polyfills": ["es6promises"],
"authors": ["Krister Kari", "Jake Archibald"],
"tags": ["es6"],
"notes": [{
"name": "The ES6 promises spec",
"href": "https://github.com/domenic/promises-unwrapping"
},{
"name": "Chromium dashboard - ES6 Promises",
"href": "http://www.chromestatus.com/features/5681726336532480"
},{
"name": "JavaScript Promises: There and back again - HTML5 Rocks",
"href": "http://www.html5rocks.com/en/tutorials/es6/promises/"
}]
}
!*/
/* DOC
Check if browser implements ECMAScript 6 Promises per specification.
*/
define(['Modernizr'], function(Modernizr) {
Modernizr.addTest('promises', function() {
return 'Promise' in window &&
// Some of these methods are missing from
// Firefox/Chrome experimental implementations
'resolve' in window.Promise &&
'reject' in window.Promise &&
'all' in window.Promise &&
'race' in window.Promise &&
// Older version of the spec had a resolver object
// as the arg rather than a function
(function() {
var resolve;
new window.Promise(function(r) { resolve = r; });
return typeof resolve === 'function';
}());
});
});
© 2015 - 2025 Weber Informatics LLC | Privacy Policy