-
-
Notifications
You must be signed in to change notification settings - Fork 5.8k
Expand file tree
/
Copy pathCheckKebabCase.js
More file actions
20 lines (16 loc) · 717 Bytes
/
CheckKebabCase.js
File metadata and controls
20 lines (16 loc) · 717 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// CheckKebabCase method checks the given string is in kebab-case or not.
// Problem Source & Explanation: https://en.wikipedia.org/wiki/Naming_convention_(programming)
/**
* CheckKebabCase method returns true if the string in kebab-case, else return the false.
* @param {String} varName the name of the variable to check.
* @returns `Boolean` return true if the string is in kebab-case, else return false.
*/
const CheckKebabCase = (varName) => {
// firstly, check that input is a string or not.
if (typeof varName !== 'string') {
throw new TypeError('Argument is not a string.')
}
const pat = /(\w+)-(\w)([\w-]*)/
return pat.test(varName) && !varName.includes('_')
}
export { CheckKebabCase }