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
16,9K4 Huy hiệu vàng54 Huy hiệu bạc51 Huy hiệu Đồng4 gold badges54 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.5K48 Huy hiệu vàng212 Huy hiệu bạc374 Huy hiệu đồng48 gold badges212 silver badges374 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.75323 huy hiệu vàng107 Huy hiệu bạc208 Huy hiệu đồng23 gold badges107 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.2201 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.31521 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
1
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.2851 Huy hiệu vàng5 Huy hiệu bạc10 Huy hiệu đồng1 gold badge5 silver badges10 bronze badges
1
var exists = Object.keys[obj].some[function[k] {
return obj[k] === "test1";
}];
4
Karthikeyan
7.80010 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
48.3K12 Huy hiệu vàng191 Huy hiệu bạc172 Huy hiệu đồng12 gold badges191 silver badges172 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