Get default values for x:
let defaultX = 3;
function vec1({ x }) {
  x = x || defaultX;
  return { x };
}
Usage fails for:
vec1({ x: 0 }); // returns { x: 3 }, expected: { x: 0 }
Get default values for x:
let defaultX = 3;
function vec1({ x }) {
  x = x || defaultX;
  return { x };
}
Usage fails for:
vec1({ x: 0 }); // returns { x: 3 }, expected: { x: 0 }
 
    
    You could take a default value for an undefined property.
let defaultX = 3;
function vec1({ x = defaultX }) {
    return { x };
}
console.log(vec1({ x: 0 })); // { x: 0 }
console.log(vec1({}));       // { x: 3 }