Nhận các giá trị duy nhất từ ​​hai mảng JavaScript

const arr1 = ['b', 'c', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'm', 'n', 'p

const arr2 = ['b', 'c', 'n', 'p', 'q', 'r', 's', 't', 'v', 'w', 'x', 'z

function uniqueValuesArr(arr1,arr2) {

// lặp qua mảng1 w/ forEach

// chỉ đẩy mục duy nhất từ ​​arr1 sang arr3

// gọi hàm w/ mảng ở trên và in đầu ra

bảng điều khiển. log(uniqueValuesArr(arr1, arr2))

Khi làm việc với mảng javascript, chúng ta thường gặp phải tình huống cần lấy các giá trị duy nhất từ ​​một mảng. Bài viết này sẽ xem các cách khác nhau để trích xuất các giá trị duy nhất thành một mảng riêng biệt bằng các ví dụ minh họa khác nhau

Mục lục

Nhận các giá trị duy nhất từ ​​một mảng bằng các bộ lọc

Bộ lọc của Javascript() method trả về một mảng mới bao gồm tất cả các phần tử vượt qua .

Ví dụ. -

Lấy các giá trị duy nhất từ ​​mảng [“Xin chào”, “Đây”, “Là”,”Ngôn ngữ”,”Đây”, “Là” ]

quảng cáo

Mã số. -

function getUniqueArray(_array)
{
  // in the newArray get only the elements which pass the test implemented by the filter function.
  // the test is to check if the element's index is same as the index passed in the argument.
  let newArray = _array.filter((element, index, array) => array.indexOf(element) === index);
  return newArray
}
let myArray = ["Hello", "This", "Is","Language","This", "Is" ];
console.log(getUniqueArray(myArray));

đầu ra. -

Đọc thêm

  • JavaScript Xóa dấu gạch nối khỏi chuỗi
  • Javascript. lặp qua một mảng các đối tượng
  • Javascript. Kiểm tra xem một đối tượng có phải là mảng không
  • Javascript. Chuyển đổi chuỗi thành số

[ 'Hello', 'This', 'Is', 'Language' ]

Giải trình. -

  • Ở đây, phương thức filter() được áp dụng cho tất cả các phần tử của mảng
  • Trong bộ lọc phương thức (phần tử, chỉ mục, mảng), chỉ mục của từng phần tử (đối số thứ nhất) được so sánh với chỉ mục (đối số thứ hai) của mảng (đối số thứ ba)
  • Một mảng mới được tạo cho các phần tử bằng nhau

Nhận các giá trị duy nhất từ ​​một mảng bằng cách sử dụng SET

Bộ của Javascript là lưu trữ các giá trị duy nhất .

Ví dụ. -

Lấy các giá trị duy nhất từ ​​mảng [“Xin chào”, “Đây”, “Là”,”Ngôn ngữ”,”Đây”, “Là” ]

Mã số. -

function getUniqueArray(_array)
{
//store the _array elements in the Set and then create a newArray from this Set
  let newArray =[.. new Set(_array)];
  return newArray
}
let myArray = ["Hello", "This", "Is","Language","This", "Is" ];
console.log(getUniqueArray(myArray));

đầu ra. -

[ 'Hello', 'This', 'Is', 'Language' ]

Giải trình. -

  • Trong đoạn mã trên, các phần tử myArray của mảng gốcđược lưu trữ trong một Tập hợp.
  • Sau đó, một mảng mới newArrray được tạo, lấy tất cả các phần tử của Tập hợp đã tạo. Vì Tập hợp chứa các giá trị duy nhất nên mảng mới tạo chỉ có các giá trị duy nhất

Nhận các giá trị duy nhất từ ​​một mảng bằng Object

Ví dụ. -

Lấy các giá trị duy nhất từ ​​mảng [“Xin chào”, “Đây”, “Là”,”Ngôn ngữ”,”Đây”, “Là” ]

Mã số. -

function getUniqueArray(_array) {
  var obj = {};
  var uniqueArray = [];
  for (var i = 0; i < _array.length; i++) {
      if (obj[_array[i]] == undefined)
// add the array elements to object , where the element is key and the same element is value
// keys of the object can only have unique values
      {   
          obj[_array[i]] = i;
// add the keys of the object to a new array as elements of the array
          uniqueArray.push(_array[i]);
      }
  }
  return uniqueArray; 
}
let myArray = ["Hello", "This", "Is","Language","This", "Is" ];
console.log(getUniqueArray(myArray));

đầu ra. -

[ 'Hello', 'This', 'Is', 'Language' ]

Giải trình. -

  • Trong đoạn mã trên, các phần tử mảng myArray ban đầu được lưu trữ trong một Đối tượng trong đó mỗi phần tử mảng được truyền dưới dạng khóa và phần tử tương tự được truyền dưới dạng giá trị của các cặp khóa-giá trị đối tượng
  • Một mảng mới uniqueArray sau đó được tạo từ tất cả các khóa của đối tượng được tạo.  
  • Vì các khóa của một đối tượng là duy nhất nên mảng mới được tạo chỉ có các giá trị duy nhất

Nhận các giá trị duy nhất từ ​​một mảng bằng phép lặp

Ví dụ. -

Lấy các giá trị duy nhất từ ​​mảng [“Xin chào”, “Đây”, “Là”,”Ngôn ngữ”,”Đây”, “Là” ]

Mã số. -

function containsElement(_array,_value)
 {
  for (var i = 0; i < _array.length; i++)
 { 
// check if new array already contains the element
    if (_array[i] === _value) 
        return true;
  }
  return false;
};
function getUniqueArray(_array) {
  var newArray = [];
  for (var i = 0; i < _array.length; i++)
 {
    if (!containsElement(newArray,_array[i])) 
   {
// if the element is not found in the newArray push it.
      newArray.push(_array[i]);
    }
  }
  return newArray;
}
let myArray = ["Hello", "This", "Is","Language","This", "Is" ];
console.log(getUniqueArray(myArray));

đầu ra. -

[ 'Hello', 'This', 'Is', 'Language' ]

Giải trình. -

  • Trong đoạn mã trên, hai hàm được tạo containsElement() và getUniqueArray()
  • Trong hàm getUniqueArray() , một mảng mới newArray[] được tạo, tất cả các phần tử của mảng được duyệt qua vòng lặp for. Phương thức containsElement(newArray,_array[i]) được gọi ở mọi lần truyền tải trong đó newArray và phần tử của mảng được truyền dưới dạng đối số. Hàm containsElement() kiểm tra xem phần tử được truyền đã có trong mảng chưa. Nếu có, thì đừng đẩy phần tử vào newArray. Khác đẩy phần tử vào newArray.

    Làm cách nào để tìm các phần tử duy nhất từ ​​2 mảng trong JavaScript?

    Cách tiếp cận. .
    Tạo một mảng trống sẽ lưu trữ các phần tử duy nhất từ ​​​​hai mảng
    Lặp lại tất cả các phần tử của mảng1 bằng vòng lặp
    Đặt giá trị cờ ban đầu là 0 cho mỗi lần lặp
    Trong vòng lặp đó Lặp lại tất cả các phần tử của mảng2 bằng một vòng lặp khác và kiểm tra xem mảng1[phần tử] có trong mảng2 không

    Làm cách nào để nhận các giá trị duy nhất từ ​​​​mảng mảng trong JavaScript?

    const arr = [1,1,2,2,3,4,4,5]; . Mảng chỉ nên chứa các phần tử chỉ xuất hiện một lần trong mảng ban đầu. write a JavaScript function that takes in one such array and returns a new array. The array should only contain the elements that only appear once in the original array.

    Làm cách nào để nhận các giá trị chung từ hai mảng trong JavaScript?

    Đầu tiên, sắp xếp cả hai mảng. Sau đó, Giữ một con trỏ cho mỗi trong hai mảng. Nếu cả hai phần tử đang được chỉ định đều bằng nhau, thì đó là một phần tử chung. Mặt khác, tăng con trỏ của mảng với giá trị thấp hơn của phần tử hiện tại

    Làm cách nào để so sánh hai mảng trong JavaScript?

    Các phương pháp so sánh hai mảng trong Javascript là. .
    so sánh bình đẳng. Sử dụng toán tử == hoặc ===
    JSON. xâu chuỗi (). Chuyển đổi các mảng thành các chuỗi JSON, sau đó so sánh các mảng đó
    cho vòng lặp. duyệt qua cả hai mảng bằng vòng lặp for và so sánh từng phần tử
    Mảng. nguyên mẫu. .
    Mảng. nguyên mẫu