Получить все значения совпадения из двух разделенных запятыми строк - PullRequest
0 голосов
/ 30 июня 2019

У меня есть две строки, разделенные запятыми, как показано ниже,

var hiddenString = '14172,10062,14172,14172,100,10,14172,15000,12000';

var strB = '14172,10062,10064,10025,100,14182';

Мне нужно создать еще одну строку на основе указанных выше двух,

, если hiddenString имеет несоответствующее значение с strB, то без этих несопоставимых значений необходимо создать новую строку, а также избежать дубликатов.просто говорит, что мне нужно получить все совпадающие значения из обеих строк.

В качестве примера, основанного на двух моих строках, я ожидаю следующее:

varFinalHiddenString = 14172,10062,100;

Как я могу это сделатьэто с использованием JavaScript, и это должно работать в safari и IE 11 или его более ранних версиях.Пожалуйста, помогите мне, я новичок в JS.

Ответы [ 2 ]

4 голосов
/ 30 июня 2019

Вы можете сначала split() строк генерировать массивы из них.Затем filter() меньший массив, проверяя индекс текущего элемента с indexOf() в другом массиве:

var hiddenString = '14172,10062,14172,14172,100,10,14172,15000,12000';
var strB = '14172,10062,10064,10025,100,14182';
var temp1 = hiddenString.split(',');
var temp2 = strB.split(',');
var varFinalHiddenString = temp2.filter(function(s){
  return temp1.indexOf(s) > -1;
}).join(',');
console.log(varFinalHiddenString);
0 голосов
/ 30 июня 2019

Создайте массивы строк, затем используйте метод «filter». Затем преобразовать обратно в строку.

var hiddenString = '14172,10062,14172,14172,100,10,14172,15000,12000';
var strB = '14172,10062,10064,10025,100,14182';

var hiddenStringAsArray = hiddenString.split(',');
var strBArray = strB.split(',');

var resultObject = $(strBArray).filter(hiddenStringAsArray);
var resultArray = resultObject.toArray();
var resultString = resultArray.join(',');

console.log(resultString);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...