Q:

Why can't inherited objects override prototype functions in the inheritance call?

When you "inherit" in javascript, you can both inherit the prototype functions of the parent and within the same Object.create(), define new prototype methods. Why can you not override in this step, too? 
Example: Fuz.baz() is not defined
function Foo() {}

Foo.prototype = {
    bar: function () {
        this.baz();
    },
    baz: function () {
        console.log("original")
    }
}

function Fuz() {
    Foo.call(this);
}

Fuz.prototype = Object.create(Foo.prototype, {
    baz: function () {
        console.log("override");
    }
});

var c = new Foo();
c.baz();

var a = new Fuz();
a.baz();

A:

You can, but you have to call Object.create() properly:
Fuz.prototype = Object.create(Foo.prototype, {
    baz: {
      value: function () {
        console.log("override");
      }
    }
});

The second argument to Object.create() should be a property descriptor object. Each entry defines a single property, and the values of those entries should be objects that provide the property value and other things like getters, setters, and access flags.

