Computer >> Máy Tính >  >> Lập trình >> Javascript

Ánh xạ ký tự của một chuỗi với một đối tượng của mảng - JavaScript

Cho một chuỗi, chúng ta bắt buộc phải viết một hàm tạo một đối tượng lưu trữ các chỉ mục của mỗi ký tự trong một mảng. Các chữ cái (phần tử) của chuỗi phải là khóa của đối tượng

Các chỉ mục phải được lưu trữ trong một mảng và các mảng đó là các giá trị.

Ví dụ -

Nếu chuỗi đầu vào là -

const str = 'cannot';

Sau đó, đầu ra phải là -

const output = {
   'c': [0],
   'a': [1],
   'n': [2, 3],
   'o': [4],
   't': [5]
};

Ví dụ

Sau đây là mã -

const str = 'cannot';
const mapString = str => {
   const map = {};
   for(let i = 0; i < str.length; i++){
      if(map.hasOwnProperty(str[i])){
         map[str[i]] = map[str[i]].concat(i);
      }else{
         map[str[i]] = [i];
      };
   };
   return map;
};
console.log(mapString(str));

Đầu ra

Sau đây là đầu ra trong bảng điều khiển -

{ c: [ 0 ], a: [ 1 ], n: [ 2, 3 ], o: [ 4 ], t: [ 5 ] }