![](/img/trans.png)
[英]Why does Node REPL not give the same results as Wat video or my browser console?
[英]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.