|
1234567891011121314151617181920212223 |
- 'use strict'
-
- var values = require('../character/values.js')
-
- function normalizeIdentifier(value) {
- return (
- value
- // Collapse Markdown whitespace.
- .replace(/[\t\n\r ]+/g, values.space)
- // Trim.
- .replace(/^ | $/g, '')
- // Some characters are considered “uppercase”, but if their lowercase
- // counterpart is uppercased will result in a different uppercase
- // character.
- // Hence, to get that form, we perform both lower- and uppercase.
- // Upper case makes sure keys will not interact with default prototypal
- // methods: no object method is uppercase.
- .toLowerCase()
- .toUpperCase()
- )
- }
-
- module.exports = normalizeIdentifier
|