Definitely any language will support AOP because is a technique, you should implement it by your self.
ES7 Decorators are awesome for AOP syntax, but there is no need to go typescript to get real AOP experience. Even ES5 can do it:
var Class = require("kaop").Class;
var Dummy = Class({
someMethod: [ //decoratedMethod
"subscribe","$inject", //befores
function($$dep1){
//method body
},
"trigger: 'action'", //afters (advice with an argument)
],
anotherMethod: function(){
/* method without advices */
}
})
I suggest you to check my recent work which implements top AOP features, even async calls
https://github.com/k1r0s/kaop
https://github.com/k1r0s/kaop-ts (Alpha) (if u love ES7 Decorators)
I also wrote an article explaining this tip
https://medium.com/@k1r0s/aspect-oriented-programming-in-javascript-es5-typescript-d751dda576d0#.3d04ziock