files/en-us/web/api/cssfontfeaturevaluesmap/foreach/index.md
{{APIRef("CSSOM")}}{{SeeCompatTable}}
The forEach() method of {{domxref("CSSFontFeatureValuesMap")}} instances executes a provided function once per each key/value pair in this map, in insertion order.
forEach(callbackFn)
forEach(callbackFn, thisArg)
callbackFn
value
key
map
thisArg {{optional_inline}}
this when executing callbackFn.None ({{jsxref("undefined")}}).
The following example logs the key and value for each entry in the @swash rule. This example is using @swash but also works with other feature value blocks.
@font-feature-values "MonteCarlo" {
@swash {
swishy: 1;
swashy: 2;
}
}
// function to be used as callback
function logSwashes(value, key, map) {
console.log(`('${key}') = ${value}`);
}
// get the rules
const myRule = document.styleSheets[0].cssRules[0];
myRule.swash.forEach(logSwashes);
// logs:
// "('swishy') = 1"
// "('swashy') = 2"
{{Specifications}}
{{Compat}}