caseless-proxy
Create ES6 proxy object with case-insensitive properties.
This library has similar semantics to the caseless library but is implemented as a proxy object. This way native javascript constructs can be used to get/set/delete properties in a case insensitive manner.
Objects created with this library behave exactly like normal javascript objects with the exception that property access happens in a case insensitive way.
Usage
caseless:
var headers = {};var c = ;c;c === 'asdf';
caseless-proxy:
var headers = {};var c = ;c'a-Header' = 'asdf';c'a-header' === 'asdf';
caseless:
c === 'a-Header'
caseless-proxy:
'a-header' in c
caseless:
var headers = {};var c = ;c;c;c === 'a-HEADER';headers === 'a-HEADER': 'fdas';
caseless-proxy:
var headers = {};var c = ;c'a-Header' = 'asdf'; { let tmp = caselessproperty; delete caselessproperty; caselessproperty = tmp;};headers === 'a-HEADER': 'fdas';
API
;
Creates a proxy to the target
object with case insensitive property access.
Will create a new object when target
is omitted.