- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试访问 JavaScript 对象中的某个成员。为此,我需要尝试几个关键值。
Ví dụ,Object['text/html']
将为我提供 HTML 文档的导出链接。但是,并非此类型的每个对象都有一个 text/html
key 对值。
在 Python 中,我会使用 Try-Catch block 解决这个问题,并出现 KeyError
异常。如果我可以在 javascript 中做类似的事情,比如在 Try-Catch block 中使用异常,那就太好了。
但是,如果存在替代方案而不是 try catch block ,它们确实可以实现相同的最终目标,我也想了解它们。
与使用函数相比,我更愿意使用异常。我这样做是因为 text/html
键可能不在那里,但它应该在那里。异常似乎更适合这种情况
câu trả lời hay nhất
当读取或写入不存在的属性时,Javascript 不会产生异常。读取它时,它只返回 không xác định
。编写它时,它只是创建属性。
您可以创建自己的函数来测试该属性是否存在,如果不存在则抛出异常(但您必须在任何时候调用该函数),但 JS 不会从中产生异常就像您所要求的那样。
如果您想在 javascript 中测试某个对象上是否存在某个键,您可以将此结构与 TRONG
运算符结合使用:
var obj = {};
var key = "test";
if (key in obj) {
// key exists
} khác {
// key doesn't exist
}
如果您尝试读取一个不存在的键,您将得到 không xác định
作为值。
var obj = {};
var value = obj.test;
alert(value === undefined);
TRONG
运算符可以更好地告诉您 key 是否存在测试 không xác định
bởi vì không xác định
是 a 的合法值存在的 key 。
在许多情况下,您可以控制键的值并且存在的键永远不会有假值,您也可以只检查键是否有真值:
var obj = {};
var obj.test = "hello";
if (obj.test) {
// key exists and has a truthy value
}
如果你想确保对象本身具有属性而不是它继承自的任何原型(prototype),那么你可以这样做:
var obj = {};
var obj.test = "hello";
if (obj.hasOwnProperty(test)) {
// key exists on the object itself (not only on the prototype)
}
关于javascript - 相当于 JavaScript 中 Python 的 KeyError 异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19324294/
Vấn đề rất đơn giản: Tôi đang tìm một cách hay để sử dụng CompleteableFuture#đặc biệt với CompletableFuture#supplyAsync. Cách này không hiệu quả: priva.
Đối với các dịch vụ web, chúng tôi thường sử dụng maven-jaxb2-plugin để tạo java Beans và sử dụng mã hóa JAXB2 trong Spring. Tôi muốn biết cách xử lý (SOAP-
Câu hỏi này đã có câu trả lời: Chỉ mục mảng ngoài hành vi bị ràng buộc (10 câu trả lời) Đã đóng 8 năm trước. Tôi tò mò về mã C sau đây int main(){
Khi đối tượng MediaPlayer được khởi tạo ở đầu lớp với ngữ cảnh và tài nguyên, nó sẽ ném ngoại lệ NullPointer, nhưng khi nó được khai báo ở đầu lớp (vì vậy nó là null), thì nó được khởi tạo theo cách tương tự trên bên Tạo
Xin chào, tôi đang cố gắng kết nối chương trình java với API REST. Sử dụng cùng một phần mã, tôi nhận được ngoại lệ Java trong Java 6 và nó hoạt động tốt trong Java 8. Môi trường giống nhau: tin tưởng vào tác nhân người dùng unix của máy
Tôi đang cố gắng phân tích Twitter bằng Flume và Hive. Để nhận được các tweet từ Twitter, tôi đặt tất cả các tham số bắt buộc (consumerKey, ConsumerKey,
Tôi đang gặp một số vấn đề với ngoại lệ JavaFX. Dự án của tôi đang chạy trong Eclipse, nhưng bây giờ bạn tôi cũng đang cố gắng truy cập vào dự án. Chúng tôi đã chia sẻ và lưu trực tiếp vào thư mục dropbox. Nhưng đơn giản là anh ấy không thể làm cho nó hoạt động được. Anh ấy đang ở bàn điều khiển
Giả sử tôi đã xác minh id email bằng sự kiện Blur(), tôi đang thực hiện việc này: $('#email').blur(function(){ //make ajax call , kiểm tra xem có trùng lặp không
Tôi làm điều này để gọi các hàm không được quản lý từ mã C. pCallback là một con trỏ hàm và do đó là một đại biểu ở phía được quản lý. [DllImport("MyDLL.dll")] trạng thái công khai
Tại sao mã này đúng: try { } Catch(ArrayOutOfBoundsException e) {} Mã này sai: try { } Catch(IOException e) {} Mã này
Tôi gặp sự cố sau: Một tệp DLL có các hàm được xuất. Ví dụ về mã như sau: [Thư viện liên kết động] __declspec(dllexport) int openDevice(int,void**) [Application] dev.h: __de
Từ các chủ đề khác, tôi biết rằng chúng ta không nên ném ngoại lệ vào hàm hủy! Nhưng đối với ví dụ bên dưới, nó vẫn hoạt động. Điều này có nghĩa là chúng ta chỉ có thể ném ngoại lệ vào hàm hủy của một thể hiện? Chúng ta nên hiểu ví dụ mã này như thế nào!
Tại sao chúng ta cần ngoại lệ để tăng public static void main(String[
1. Cơ chế ngoại lệ của Java Lớp Throwable là lớp cha cấp cao nhất của các loại ngoại lệ Java. Chỉ khi một đối tượng là một thể hiện (trực tiếp hoặc gián tiếp) của lớp Throwable thì nó là một đối tượng ngoại lệ và có thể được cơ chế xử lý ngoại lệ nhận ra. . Trong JDK
Tôi mới làm quen với Python và tôi có câu hỏi về việc triển khai một phương pháp ngoại lệ nhất định. Đây là mã (viết tắt): class OurException(Exception): """Ngoại lệ do người dùng xác định"
Tôi đã tạo lược đồ sau để thể hiện mối liên kết giữa một người dùng và một tập hợp các chủ đề được sắp xếp theo thông báo cuối cùng của họ (luồng nào người dùng đã đọc và chuỗi nào chưa): CREATE TABLE table(user_id bigint, mes
Tôi đang viết một tập lệnh tự động hóa đơn giản bằng Python có thể đưa ra ngoại lệ ở nhiều nơi. Trong mỗi người trong số họ tôi muốn ghi lại một tin nhắn cụ thể và thoát khỏi chương trình. Để làm điều này, tôi nâng cao Sys sau khi bắt được ngoại lệ và xử lý nó (thực hiện các thao tác ghi nhật ký cụ thể, v.v.)
Bất cứ ai có thể giải thích tại sao điều này sẽ gây ra lỗi: let xs = [| "Mary"; "Mungo"; "Midge" |] Array.iter printfn xs Mặc dù đây không phải là trường hợp: Array.iter pr
Trên trang web sử dụng Play! của tôi, tôi có phần quản trị. Tất cả Bộ điều khiển dành cho quản trị viên đều có chú thích @With và @Check. Sau khi ngắt kết nối, mọi thứ hoạt động tốt. Sau khi kết nối, mỗi khi một trang được tải (bất kỳ trang nào, bất kể
Tôi cố gắng kết nối với bộ lưu trữ bảng Azure và thêm một đối tượng. Nó hoạt động tốt trên localhost, nhưng trên máy chủ tôi đang sử dụng, tôi gặp ngoại lệ sau với ngoại lệ bên trong của nó: Ngoại lệ của loại 'Microsoft.Wind
Tôi là một lập trình viên xuất sắc, rất giỏi!