The view will update immediately after setting the definitionExpression property.
When querying the layer you can build a new query from scratch or you can create one that already satisfies the set definitionExpression. By using createQuery() the result will only return filtered features.
var query = sceneLayer.createQuery();
query.outFields = ['SPACETYPE'];
sceneLayer.queryFeatures(query)
.then(function(result){
console.log(result.features); // print the features to the console
});