function lerp(a, b, t) {
  return b * t + a * (1 - t);
} 

function lerp(a, b, t) {
  t = clamp(0, t, 1);
  return b * t + a * (1 - t);
} 

function clamp(a, v, b) {
  return Math.min(b, Math.max(v, a));
}

function smoothstep(a, b, t) {
  t = clamp(0, t, 1);
  var v = t * t * t * (t * (t * 6.0 - 15.0) + 10.0);
  return b * v + a * (1 - v);
}

Add more, clamp existing interpolations