Tôi có một đối tượng trong JavaScript:
var obj = {
"a": "test1",
"b": "test2"
}
Làm cách nào để kiểm tra xem Test1 có tồn tại trong đối tượng dưới dạng giá trị không?
hỏi ngày 11 tháng 3 năm 2016 lúc 19:47Mar 11, 2016 at 19:47
2
Es6+ một lớp lót ngắn nhất:
let exists = Object.values[obj].includes["test1"];
Đã trả lời ngày 15 tháng 9 năm 2019 lúc 14:02Sep 15, 2019 at 14:02
Chickenschickenschickens
17.2K4 Huy hiệu vàng55 Huy hiệu bạc51 Huy hiệu Đồng4 gold badges55 silver badges51 bronze badges
1
Bạn có thể sử dụng phương thức mảng
var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
7:var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
Đã trả lời ngày 11 tháng 3 năm 2016 lúc 19:49Mar 11, 2016 at 19:49
TYMEJVTYMEJVtymeJV
103K14 Huy hiệu vàng161 Huy hiệu bạc157 Huy hiệu đồng14 gold badges161 silver badges157 bronze badges
2
Thử:
var obj = {
"a": "test1",
"b": "test2"
};
Object.keys[obj].forEach[function[key] {
if [obj[key] == 'test1'] {
alert['exists'];
}
}];
Hoặc
var obj = {
"a": "test1",
"b": "test2"
};
var found = Object.keys[obj].filter[function[key] {
return obj[key] === 'test1';
}];
if [found.length] {
alert['exists'];
}
Điều này sẽ không hoạt động cho
var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
8 và var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
9 cho các giá trị đó. Bạn có thể sử dụng [thay vì var obj = {
"a": "test1",
"b": "test2"
};
Object.keys[obj].forEach[function[key] {
if [obj[key] == 'test1'] {
alert['exists'];
}
}];
0] những gì mới trong Ecmascript & nbsp; 6: Object.is[obj[key], value];
Với trình duyệt hiện đại, bạn cũng có thể sử dụng:
var obj = {
"a": "test1",
"b": "test2"
};
if [Object.values[obj].includes['test1']] {
alert['exists'];
}
Đã trả lời ngày 11 tháng 3 năm 2016 lúc 19:50Mar 11, 2016 at 19:50
Jcubicjcubicjcubic
58.6K49 Huy hiệu vàng213 Huy hiệu bạc380 Huy hiệu đồng49 gold badges213 silver badges380 bronze badges
Sử dụng vòng lặp
var obj = {
"a": "test1",
"b": "test2"
};
Object.keys[obj].forEach[function[key] {
if [obj[key] == 'test1'] {
alert['exists'];
}
}];
1:for [let k in obj] {
if [obj[k] === "test1"] {
return true;
}
}
Đã trả lời ngày 11 tháng 3 năm 2016 lúc 19:53Mar 11, 2016 at 19:53
isvforallisvforallisvforall
8.5026 Huy hiệu vàng35 Huy hiệu bạc49 Huy hiệu đồng6 gold badges35 silver badges49 bronze badges
2
Bạn có thể sử dụng Object.Values []:
Phương thức
2 trả về một mảng của các giá trị thuộc tính có thể suy giảm của một đối tượng, theo cùng thứ tự như được quy định bởi vòng lặpvar obj = { "a": "test1", "b": "test2" }; Object.keys[obj].forEach[function[key] { if [obj[key] == 'test1'] { alert['exists']; } }];
1 [sự khác biệt là một vòng lặp trong việc liệt kê các thuộc tính trong chuỗi nguyên mẫu].var obj = { "a": "test1", "b": "test2" }; Object.keys[obj].forEach[function[key] { if [obj[key] == 'test1'] { alert['exists']; } }];
và sau đó sử dụng phương thức indexof []:
Phương thức
4 trả về chỉ mục đầu tiên mà tại đó một phần tử nhất định có thể được tìm thấy trong mảng hoặc -1 nếu nó không có.var obj = { "a": "test1", "b": "test2" }; Object.keys[obj].forEach[function[key] { if [obj[key] == 'test1'] { alert['exists']; } }];
Ví dụ:
Object.values[obj].indexOf["test`"] >= 0
Một ví dụ dài dòng hơn bên dưới:
var obj = {
"a": "test1",
"b": "test2"
}
console.log[Object.values[obj].indexOf["test1"]]; // 0
console.log[Object.values[obj].indexOf["test2"]]; // 1
console.log[Object.values[obj].indexOf["test1"] >= 0]; // true
console.log[Object.values[obj].indexOf["test2"] >= 0]; // true
console.log[Object.values[obj].indexOf["test10"]]; // -1
console.log[Object.values[obj].indexOf["test10"] >= 0]; // false
user1063287
9.78323 Huy hiệu vàng110 Huy hiệu bạc208 Huy hiệu đồng23 gold badges110 silver badges208 bronze badges
Đã trả lời ngày 1 tháng 11 năm 2018 lúc 14:28Nov 1, 2018 at 14:28
Đối với một lớp lót, tôi sẽ nói:
let exists = Object.values[obj].includes["test1"];
0
Đã trả lời ngày 11 tháng 9 năm 2019 lúc 18:57Sep 11, 2019 at 18:57
0
Tôi đã làm một bài kiểm tra với tất cả các ví dụ này và tôi đã chạy cái này trong Node.js v8.11.2. Lấy điều này làm hướng dẫn để chọn sự lựa chọn tốt nhất của bạn.Node.js v8.11.2. Take this as a guide to select your best choice.
let exists = Object.values[obj].includes["test1"];
1Đầu ra trên máy chủ của tôi
let exists = Object.values[obj].includes["test1"];
2
Đã trả lời ngày 7 tháng 6 năm 2018 lúc 17:25Jun 7, 2018 at 17:25
DarckblezzerdarckblezzerDarckBlezzer
4.2301 Huy hiệu vàng40 Huy hiệu bạc 50 Huy hiệu Đồng1 gold badge40 silver badges50 bronze badges
let exists = Object.values[obj].includes["test1"];
3Đã trả lời ngày 4 tháng 6 năm 2021 lúc 6:32Jun 4, 2021 at 6:32
CryptoktmcryptoktmcryptoKTM
2.32521 Huy hiệu bạc18 Huy hiệu đồng21 silver badges18 bronze badges
1
Bạn có thể thử cái này
let exists = Object.values[obj].includes["test1"];
4Đã trả lời ngày 22 tháng 7 năm 2020 lúc 15:07Jul 22, 2020 at 15:07
fengxhfengxhfengxh
3692 Huy hiệu bạc8 Huy hiệu Đồng2 silver badges8 bronze badges
Bạn có thể thử điều này:
let exists = Object.values[obj].includes["test1"];
5Đã trả lời ngày 11 tháng 3 năm 2016 lúc 19:51Mar 11, 2016 at 19:51
Trong phiên bản mới nếu tập lệnh ECMA bây giờ, chúng tôi có thể kiểm tra các hoạt động
var obj = {
"a": "test1",
"b": "test2"
};
Object.keys[obj].forEach[function[key] {
if [obj[key] == 'test1'] {
alert['exists'];
}
}];
5 ..Các giá trị kiểm tra yo đơn giản và dễ dàng hơn trong một đối tượng hoặc lồng nhau hoặc các đối tượng
let exists = Object.values[obj].includes["test1"];
6Tương tự như vậy trong JavaScript loại nguyên thủy được sử dụng nhiều nhất là đối tượng
Chúng ta cũng có thể sử dụng các mảng này, các chức năng, v.v.
let exists = Object.values[obj].includes["test1"];
7Cảm ơn
Đã trả lời ngày 12 tháng 3 năm 2021 lúc 12:01Mar 12, 2021 at 12:01
1
Cách tốt nhất để tìm giá trị tồn tại trong một đối tượng bằng cách sử dụng object.keys []
let exists = Object.values[obj].includes["test1"];
8Đã trả lời ngày 8 tháng 4 năm 2021 lúc 18:14Apr 8, 2021 at 18:14
let exists = Object.values[obj].includes["test1"];
9Chức năng được gọi là:
var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
0
Đã trả lời ngày 19 tháng 3 năm 2020 lúc 12:34Mar 19, 2020 at 12:34
2
var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
1Phương thức đối tượng. Mảng được lặp lại bằng cách sử dụng vòng
var obj = {
"a": "test1",
"b": "test2"
};
Object.keys[obj].forEach[function[key] {
if [obj[key] == 'test1'] {
alert['exists'];
}
}];
6 để truy xuất từng giá trị [giá trị trong getValuesFromObject] và trả về hàm boolean [] để tìm hiểu xem biểu thức ["text1" là giá trị trong mảng vòng lặp] là đúng.
Đã trả lời ngày 8 tháng 2 năm 2019 lúc 9:21Feb 8, 2019 at 9:21
Đối với các cấu trúc phức tạp, đây là cách tôi làm điều đó:
var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
2Đã trả lời ngày 2 tháng 7 lúc 4:24Jul 2 at 4:24
Phương pháp
var obj = {
"a": "test1",
"b": "test2"
};
Object.keys[obj].forEach[function[key] {
if [obj[key] == 'test1'] {
alert['exists'];
}
}];
7 được sử dụng để kiểm tra xem đường dẫn có phải là thuộc tính trực tiếp của đối tượng hay không. Nó trả về đúng nếu đường dẫn tồn tại, nếu không nó trả về sai.3var exists = Object.keys[obj].some[function[k] { return obj[k] === "test1"; }];
Đầu ra: Đúng đúng sai
Đã trả lời ngày 2 tháng 12 năm 2021 lúc 7:46Dec 2, 2021 at 7:46
Adityaatriadityaatriadityaatri
1.3391 Huy hiệu vàng6 Huy hiệu bạc10 Huy hiệu đồng1 gold badge6 silver badges10 bronze badges
1
var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
4
Karthikeyan
7.83010 Huy hiệu vàng47 Huy hiệu bạc67 Huy hiệu Đồng10 gold badges47 silver badges67 bronze badges
Đã trả lời ngày 11 tháng 3 năm 2016 lúc 19:52Mar 11, 2016 at 19:52
NoctisdarknoctisdarkNoctisdark
3443 Huy hiệu bạc17 Huy hiệu đồng3 silver badges17 bronze badges
Câu trả lời đơn giản cho điều này được đưa ra dưới đây.
Điều này đang hoạt động bởi vì mọi loại JavaScript đều có thuộc tính Constructor của người xây dựng trên nguyên mẫu của nó.“constructor” property on it prototype”.
var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
5
GầnHusCarl
49,9K12 Huy hiệu vàng198 Huy hiệu bạc178 Huy hiệu đồng12 gold badges198 silver badges178 bronze badges
Đã trả lời ngày 20 tháng 2 năm 2020 lúc 1:33Feb 20, 2020 at 1:33
Mohd Sahilmohd SahilMohd Sahil
3753 Huy hiệu bạc3 Huy hiệu đồng3 silver badges3 bronze badges
2
Đây phải là một kiểm tra đơn giản.
ví dụ 1
var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
6
Đã trả lời ngày 11 tháng 3 năm 2016 lúc 19:51Mar 11, 2016 at 19:51
Trong phiên bản mới nếu tập lệnh ECMA bây giờ, chúng tôi có thể kiểm tra các hoạt động
var obj = {
"a": "test1",
"b": "test2"
};
Object.keys[obj].forEach[function[key] {
if [obj[key] == 'test1'] {
alert['exists'];
}
}];
5 ..KpTheConstructorCác giá trị kiểm tra yo đơn giản và dễ dàng hơn trong một đối tượng hoặc lồng nhau hoặc các đối tượng1 gold badge12 silver badges21 bronze badges
2