разбивка строки на массив

171
17 июля 2021, 17:50

Как из такой Organization/LimitedCompany/HousingCooperative строки можно сделать массив такого вида: ['Organization', 'Organization/LimitedCompany', 'Organization/LimitedCompany/HousingCooperative']?

Answer 1

let str = 'Organization/LimitedCompany/HousingCooperative', 
  temp = null, 
  result = []; 
let data = str.split('/'); 
 
data.forEach(function(item, index, array) { 
  temp = (temp !== null) ? temp + '/' + item : item; 
  result.push(temp); 
}); 
 
console.log(result);

Answer 2

Вариант с reduce:

let str = 'Organization/LimitedCompany/HousingCooperative'; 
let data = str.split('/'); 
 
let result = data.reduce((acc, item, i) => { 
  acc.push((i ? acc[i - 1] + '/' : '') + item); 
  return acc; 
}, []) 
 
console.log(result)

И с map:

let str = 'Organization/LimitedCompany/HousingCooperative'; 
let data = str.split('/'); 
 
let result = data.map((item, i, arr) => arr.slice(0, i + 1).join('/')); 
console.log(result);

READ ALSO
Nuxt Vuetifi, переопределение стилей scss

Nuxt Vuetifi, переопределение стилей scss

В продакшен версии мои стили перебиваются стилями vuetify

218
document.querySelectorAll() в IE8

document.querySelectorAll() в IE8

Есть возможность заставить работать documentquerySelectorAll('

251
eslint проверяет json файлы

eslint проверяет json файлы

Прописал команду в packagejson:

184
Как послать POST запрос?

Как послать POST запрос?

Я делаю POST запрос в delphi URL + Body(JSON Object) и все работает

118