Objectの組込みプロパティlengthはなぜ、obj.length;で使用できないのでしょうか?
・常に1だから?
・対象はユーザ定義オブジェクトではないのでしょうか?

var obj = { k: 1 };
obj.length; //undefined

Object.keysで取得できるということは、組込みプロパティlengthは列挙不可に設定されているのでしょうか?

var obj = { k: 1 };
Object.keys(obj).length; //1

in演算子で確認できると思ったのですが
・in演算子は組込みプロパティには未対応なのでしょうか?

var obj = { k: 1 };
"length" in obj; //false


var obj = { k: 1 };
length in obj; //false

組込みプロパティlengthは、どこに所属しているのでしょうか?

var obj = { k: 1 };
obj.hasOwnProperty('length'); //false

var obj = { k: 1 };
obj.k.hasOwnProperty('length'); //false

var obj = { k: 1 };
Object.getOwnPropertyNames(obj); //["k"]