Change Opacity of Style
You can use ol.color.asArray
method for that. Fourth element of array is then opacity:
var color = myStyle.getFill().getColor();
var colorArray = ol.color.asArray(color);
var opacity = colorArray[3];
EDIT: As Mike rightfully pointed out, above code is suitable only for reading opacity. Since asArray()
method returns cached color, if we want to change color and use it independantly, copy of the color has to be created with slice()
method (Mike's code):
var color = myStyle.getFill().getColor();
var colorArray = ol.color.asArray(color).slice();
colorArray[3] = 0.5;
myStyle.getFill().setColor(colorArray);