document.cookieまたは、オペレーターがオーバーライドされているため、それらを変更しようとすると、通常の割り当てとは異なることが起こる
window.locationオブジェクトです。以来、さらに驚くべきことです。=document.cookietypeof document.cookie === "string"
いくつかの非常に特殊な JavaScript オブジェクトの組み込み機能ですか、それともあらゆる種類のオブジェクトで再現できるものですか?
document.cookieまたは、オペレーターがオーバーライドされているため、それらを変更しようとすると、通常の割り当てとは異なることが起こる
window.locationオブジェクトです。以来、さらに驚くべきことです。=document.cookietypeof document.cookie === "string"
いくつかの非常に特殊な JavaScript オブジェクトの組み込み機能ですか、それともあらゆる種類のオブジェクトで再現できるものですか?
JavaScript では、オブジェクト プロパティ (document.cookieまたは などwindow.location) を定義して、プロパティ値の読み取りまたは書き込み時に getter または setter 関数を自動的に呼び出すことができます。プロパティには、書き込み可能かどうかのフラグを立てることもできます。この機能は、表示されている動作を実装するためにブラウザーによって使用されます。
ECMAScript 5以降では、関数を使用してこの方法で独自のプロパティを定義できますObject.defineProperty。これを使用する方法の詳細と例は、ここにあります。この機能を使用して、たとえば、オブジェクトの 1 つのプロパティに値が割り当てられたときに、複雑なアクションを呼び出すことができます。