簡體   English   中英

為什么開發者控制台對相同的數據輸入給出不同的結果?

[英]Why does the developer console give different results for the same data input?

為什么開發者控制台對相同的數據輸入給出不同的結果? 下面是我在 Chrome 開發者控制台中檢查的代碼。我很困惑如何提供不同的輸出。


  
  
  
    // First time
    var a = [1, 2, 3];
    var b = [1, 2, 3];
    var c = "1,2,3";

    a == c; // true
    b == c; // true
    a == b; // false

    //Second time
    console.log(a == c);
    console.log(b == c);
    console.log(a == b);

    a = [1, 2, 3];
    b = [a, 2, 3];
    c = "1, 2, 3";
    console.log(a == c);  //false
    console.log(b == c);  //false
    console.log(a == b); //false
b = [1, 2, 3]; // first
b = [a, 2, 3]; // second

arrays 的第一個元素不同

ps避免'=='並在生產中使用'==='。

您第二次執行的所有值都是錯誤的,因為沒有一個值是相等的。

var c = "1,2,3" 與 c = "1, 2, 3" 不同,因為第二個字符串中有空格。

var b = [1, 2, 3] 與 b = [a, 2, 3] 不同,因為第二個數組中的第一個元素不同。

試試下面的代碼

// First time
var a = [1, 2, 3];
var b = [1, 2, 3];
var c = "1,2,3";

a == c;
b == c;
a == b;

//Second time
console.log(a == c);
console.log(b == c);
console.log(a == b);

a = [1, 2, 3];
b = [1, 2, 3];
c = "1,2,3";
console.log(a == c);
console.log(b == c);
console.log(a == b);
// First time
var a = [1, 2, 3];
var b = [1, 2, 3];
var c = "1,2,3";

a == c; // true
b == c; // true
a == b; // false

//Second time
console.log(a == c);
console.log(b == c);
console.log(a == b);

a = [1, 2, 3];
b = [a, 2, 3];
c = "1, 2, 3";
console.log(a == c);  //false
console.log(b == c);  //false
console.log(a == b); //false

第二組看起來像這樣:

a = [1, 2, 3];
b = [[1,2,3],2,3]; -> Jagged Array;
c = "1,2,3"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM