/** * * @param {any} fullTitle * @returns object */ var splitFullTitle = function (fullTitle) { log.debug(fullTitle); var indexOf = fullTitle.lastIndexOf("("); var description = fullTitle; var nickname = ""; if (indexOf > 0) { description = fullTitle.substr(0, indexOf - 1); var lastIndex = fullTitle.lastIndexOf(")"); nickname = fullTitle.substring(indexOf + 1, lastIndex); } return { description: description, nickname: nickname }; };and use it as
var item = splitFullTitle(data.departments[0].items[i].title); allDepartments.push({ "id": data.departments[0].items[i].intKeys[0], "descrip": item.description, "nickname": item.nickname, "preventDefault": true, "hash": data.departments[0].items[i].keys[0], "hidden": data.departments[0].items[i].hidden });Do you think your version is better and more optimized or should I leave the code I already put in place?
>function splitName (fullName) >{ > if (parts = fullName.match(/(.*)\((.+)\)\s*$/, "g")){ > this.description = parts[1]; > this.nickname = parts[2]; > } else { > this.description = fullName; > this.nickname = ""; > } >} > >sn = new splitName("Some String (here)"); > >// sn.description = "Some String" >// sn.nickname = "here" > >sn = new splitName("Some (String) (here)"); > >// sn.description = "Some (String)" >// sn.nickname = "here" > >sn = new splitName("Some String here"); > >// sn.description = "Some String here" >// sn.nickname = "" >>
>>function splitName (fullName) >>{ >> var item = {description : partOne, nickname : partTwo }; >> >> return item; >>} >>>>
>>var splittedName = splitName ("Some String (here)") >> >>var firsPart = splittedName.description; >>var secondPart = splittedName.nickname; >>>>
>> for (var i = 0; i < data.departments[0].items.length; i++) { >> var temp = data.departments[0].items[i].title.split("("); >> var description = temp[0]; >> var nickname = temp[1].split(")")[0]; >> >> allDepartments.push({ >> "id": data.departments[0].items[i].intKeys[0], >> "descrip": description, >> "nickname": nickname, >> "preventDefault": true, >> "hash": data.departments[0].items[i].keys[0], >> "hidden": data.departments[0].items[i].hidden >> }); >> }>>