ie8 compatibility use of instanceOf rather then Function.name