You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
18 lines
630 B
18 lines
630 B
'use strict' |
|
|
|
function normalizeIdentifier(value) { |
|
return ( |
|
value // Collapse Markdown whitespace. |
|
.replace(/[\t\n\r ]+/g, ' ') // 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
|
|
|