249 backgroundColor: "#ecfeff",
250 tooltips: {
251 callbacks: {
252 label: function (tooltipItem, data) {253 let label = data.datasets[tooltipItem.datasetIndex].label || "";254 if (label) {255 label += ": ";256 }257 label += `${tooltipItem.yLabel}% `;258 label += overall_departments[tooltipItem.index].number_of_sentiments;259 return label;260 },261 },
262 },
263 };
ECMAScript 6 provides a concise form for defining object literal methods and properties. This syntax can make defining complex object literals much cleaner.
Here are a few common examples using the ES5 syntax:
const x = 1, y = 2, z = 3;
// properties
const foo = {
x: x,
y: y,
z: z,
};
// methods
const foo = {
a: function() {},
b: function() {}
};
The ES6 equivalent syntax is::
// properties
const foo = {x, y, z};
// methods
const bar = {
a() { return 1 },
b() { return 2 }
};
NOTE: The shorthand properties are equivalent to function expressions.
Meaning that they do not bind their own this
inside their bodies.
It is still possible to access properties from the object inside a shorthand member function:
const object = {
x: 1,
getX() {
return this.x // valid
}
}
const foo = {
bar: function () { return 1 }
};
const foo = {
bar() { return 1 }
}