配列を比較するJasmine.js
配列は2つの方法で比較できます-
-
それらはメモリ内の同じ配列オブジェクトを参照します。
-
それらは異なるオブジェクトを参照する場合がありますが、それらの内容はすべて同じです。
ケース1の場合、ジャスミンはtoBeメソッドを提供します。これは参照をチェックします。たとえば、
例
describe("Array Equality", () => { it("should check for array reference equility", () => { let arr = [1, 2, 3]; let arr2 = arr // Runs successfully expect(arr).toBe(arr2); // Fails as references are not equal expect(arr).toBe([1, 2, 3]); }); });
出力
これにより、出力が得られます-
Array Equality should check for array equility Message: Expected [ 1, 2, 3 ] to be [ 1, 2, 3 ]. Tip: To check for deep equality, use .toEqual() instead of .toBe().
ケース2の場合、toEqualメソッドを使用して、配列を詳細に比較できます。たとえば、
例
describe("Array Equality", () => { it("should check for array reference equility", () => { let arr = [1, 2, 3]; let arr2 = arr; // Runs successfully expect(arr).toEqual(arr2); // Runs successfully expect(arr).toEqual([1, 2, 3]); }); });
出力
これにより、出力が得られます-
1 spec, 0 failures
-
配列とJavaScriptでの設定。
Setデータ型はES2015で導入されました。配列とセットの違いは、配列には重複する値を含めることができますが、セットにはできないことです。要素は、キーを使用し、要素は入力された方法でのみトラバースできるため、Setでは不可能なインデックスを使用して配列でアクセスできます。 以下は、JavaScriptの配列と設定の違いを表示するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name=&
-
JavaScriptで配列を減らす方法は?
以下は、JavaScriptで配列を減らすためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> &n