Создать свойство объекта с двумя необязательными условиями
Чего я хочу?
Я хочу создать свойство объекта, в котором каждое слово в строке пишется с заглавной буквы, необязательно заменяет подчеркивания пробелами и / или строчные буквы в первую очередь. Я хочу установить параметры по двум параметрам:
Первый параметр верно?
Затем замените все подчеркивания пробелами.
Второй параметр true?
Затем строчная полная строка в первую очередь.
Что я до сих пор работаю?
замените подчеркивание пробелом, а затем пишите все слова с заглавной буквы:
String.prototype.capitalize = function(underscore){
return (underscore ? this.replace(/\_/g, " ") : this).replace(/(?:^|\s)\S/g, function(a) { return a.toUpperCase(); });
}
var strUnderscoreFalse = "javaSCrIPT replace_First_underderscore with whitespace_false";
//replace underscore first = false
console.log(strUnderscoreFalse.capitalize());
var strUnderscoreTrue = "javaSCrIPT replace_First_underderscore with whitespace_true";
//replace underscore first = true
console.log(strUnderscoreTrue.capitalize(true));
сначала строчная строка, а затем заглавные буквы:
String.prototype.capitalize = function(lower){
return (lower ? this.toLowerCase() : this).replace(/(?:^|\s)\S/g, function(a) { return a.toUpperCase(); });
}
var strLcaseFalse = "javaSCrIPT lowercase First false";
//lowercase first = false
console.log(strLcaseFalse.capitalize());
var strLcaseTrue = "javaSCrIPT lowercase First true";
//lowercase first = true
console.log(strLcaseTrue.capitalize(true));
Какие у меня вопросы?
- Это первый раз, когда я пытаюсь создать свойство объекта с этим условным уведомлением. Как я могу объединить эти два параметра в моей функции свойства объекта, чтобы мне нужно было установить только два параметра?
Например:
//replace underscore first = true and lowercase first = true
console.log(str.capitalize(true , true));
//replace underscore first = false and lowercase first = true
console.log(str.capitalize(false , true));
- В любом случае, как называется написание условия с синтаксической нотацией типа "?" и ":"?