Я бы хотел быстро проверить, является ли строка допустимой для использования в качестве имени свойства, используя правила точечной нотации (любые буквы или цифры, а также _
и $
, если она не начинаетсяс цифрой), как очевидно, если используется скобочная запись, то все верно.
Я пытался найти решение для regEx, но мои знания о regEx невелики.Я думаю, что мой текущий шаблон будет разрешать буквы, цифры, $
и _
, но я не знаю, как запретить начинать с цифры
function validName(str){
// check if str meets the requirements
return /^[a-zA-Z0-9$_]+$/.test(str);
}
validName("newName") // should return TRUE
validName("newName32") // should return TRUE
validName("_newName") // should return TRUE
validName("4newName") // should return FALSE
validName("new Name") // should return FALSE
validName("") // should return FALSE