TypeErrorTypeError
Một giá trị không đúng kiểu dự kiến. Đây là lỗi JavaScript phổ biến nhất, xảy ra khi một thao tác gặp giá trị sai kiểu.
Duyệt tất cả 100 mã lỗi Lỗi JavaScript với nguyên nhân, cách sửa và ví dụ.
TypeErrorMột giá trị không đúng kiểu dự kiến. Đây là lỗi JavaScript phổ biến nhất, xảy ra khi một thao tác gặp giá trị sai kiểu.
TypeError: x is not a functionĐã thử gọi một giá trị như thể nó là hàm trong khi thực tế không phải.
TypeError: Cannot read properties of undefined/nullĐã cố truy cập thuộc tính hoặc phương thức trên undefined hoặc null.
TypeError: Cannot set properties of undefined/nullCó lần thử gán thuộc tính lên undefined hoặc null.
TypeError: x is not iterableMột giá trị không thể lặp được dùng ở nơi yêu cầu iterable, chẳng hạn trong vòng lặp for...of hoặc toán tử spread.
TypeError: x is not a constructorCó lần thử dùng từ khóa new với một giá trị không phải constructor.
TypeError: Assignment to constant variableCó lần thử gán lại giá trị cho biến được khai báo bằng const.
TypeError: Cannot convert undefined or null to objectMột phương thức tích hợp mong đợi đối tượng nhận được null hoặc undefined thay vào đó.
TypeError: Reduce of empty array with no initial valueArray.reduce() được gọi trên mảng rỗng mà không cung cấp giá trị khởi tạo.
TypeError: Cannot assign to read only propertyCó lần thử ghi vào thuộc tính chỉ đọc, do đối tượng bị đóng băng hoặc thuộc tính được định nghĩa là không thể ghi.
ReferenceErrorMột tham chiếu đến biến không tồn tại trong phạm vi hiện tại.
ReferenceError: x is not definedMột biến được tham chiếu nhưng chưa được khai báo trong bất kỳ phạm vi nào có thể truy cập.
ReferenceError: Cannot access before initializationBiến được khai báo bằng let hoặc const bị truy cập trước khai báo trong temporal dead zone.
ReferenceError: Invalid left-hand side in assignmentCó lần thử gán cho thứ gì đó không thể được gán.
SyntaxErrorJavaScript engine gặp code không tuân theo cú pháp ngôn ngữ.
SyntaxError: Unexpected tokenParser gặp token (ký tự hoặc từ khóa) không mong đợi tại vị trí đó trong code.
SyntaxError: Unexpected end of inputParser đến cuối đầu vào trong khi vẫn đang chờ thêm code, thường do dấu ngoặc hoặc chuỗi chưa đóng.
SyntaxError: JSON.parse unexpected characterJSON.parse() gặp cú pháp JSON không hợp lệ, chẳng hạn nháy đơn, dấu phẩy thừa cuối, hoặc khóa không được trích dẫn.
SyntaxError: Missing ) after argument listMột lời gọi hàm thiếu dấu đóng ngoặc.
SyntaxError: Unterminated string literalMột chuỗi ký tự thiếu dấu đóng ngoặc.
SyntaxError: Illegal return statementCâu lệnh return được dùng bên ngoài thân hàm.
SyntaxError: Identifier has already been declaredMột biến cùng tên được khai báo hai lần trong cùng một phạm vi bằng let hoặc const.
SyntaxError: Cannot use import statement outside a moduleCú pháp import của ES module được dùng trong file không được xử lý như một module.
SyntaxError: await is only valid in async functionsTừ khóa await được dùng bên ngoài async function.
RangeErrorMột giá trị nằm ngoài phạm vi cho phép, chẳng hạn độ dài mảng không hợp lệ hoặc vượt quá kích thước call stack.
RangeError: Maximum call stack size exceededCall stack JavaScript đã bị cạn kiệt, thường do đệ quy vô hạn hoặc quá sâu.
RangeError: Invalid array lengthMảng được tạo với độ dài không hợp lệ, chẳng hạn số âm hoặc số không nguyên.
RangeError: Invalid dateMột chuỗi ngày không hợp lệ được truyền vào method Date yêu cầu ngày hợp lệ.
RangeError: precision is out of rangeGiá trị precision truyền vào toFixed(), toPrecision(), hoặc toExponential() nằm ngoài phạm vi cho phép.
URIErrorHàm xử lý URI toàn cục (decodeURIComponent, encodeURI) nhận URI không đúng định dạng.
EvalErrorLỗi liên quan đến hàm eval() toàn cục. Lỗi này hiếm gặp trong JavaScript hiện đại.
InternalError: too much recursionLỗi đặc thù của Firefox, tương đương RangeError: Maximum call stack size exceeded trong Chrome/Node.js.
AggregateErrorLỗi bao gộp nhiều lỗi, thường được ném khi mọi promise trong Promise.any() đều bị reject.
UnhandledPromiseRejectionMột Promise bị reject nhưng không có handler .catch() hoặc khối try-catch nào để xử lý việc từ chối.
DOMException: The operation was abortedMột thao tác bị hủy thông qua tín hiệu AbortController.
DOMException: NetworkErrorThao tác mạng thất bại, thường xảy ra trong yêu cầu fetch khi mạng không thể truy cập.
DOMException: QuotaExceededErrorThao tác lưu trữ vượt quá hạn mức khả dụng của localStorage, IndexedDB, hoặc bộ nhớ lưu trữ trình duyệt khác.
DOMException: SecurityErrorThao tác nhạy cảm về bảo mật bị chính sách bảo mật của trình duyệt chặn.
DOMException: NotAllowedErrorLời gọi API trình duyệt bị chặn do yêu cầu tương tác người dùng hoặc quyền chưa được cấp.
CORS Error: No Access-Control-Allow-OriginTrình duyệt chặn yêu cầu cross-origin vì máy chủ không bao gồm CORS headers bắt buộc.
CORS Error: Preflight request failedYêu cầu CORS preflight OPTIONS của trình duyệt bị từ chối hoặc trả về CORS headers không hợp lệ.
ECONNREFUSEDKết nối bị từ chối vì không có máy chủ nào đang lắng nghe trên địa chỉ và cổng đích.
ECONNRESETMáy chủ từ xa đóng kết nối một cách cưỡng bức.
EADDRINUSEĐịa chỉ (port) đã được tiến trình khác sử dụng.
ENOTFOUNDTra cứu DNS thất bại; hostname không thể phân giải thành địa chỉ IP.
ETIMEDOUTKết nối hoặc thao tác hết thời gian chờ vì máy chủ từ xa không phản hồi kịp thời.
ENOENTTệp hoặc thư mục được chỉ định không tồn tại tại đường dẫn đã cho.
EACCESTiến trình không có quyền truy cập tệp hoặc tài nguyên.
EPERMThao tác không được phép, ngay cả với quyền phù hợp, do các hạn chế ở cấp OS.
EMFILETiến trình đã đạt đến số lượng tối đa file descriptor mở được phép.
ENFILEĐã đạt đến giới hạn toàn hệ thống về tổng số tệp đang mở.
EISDIRThao tác tệp được thực hiện trên đường dẫn là một thư mục.
ENOTDIRMột thao tác thư mục đã được thực hiện trên đường dẫn không phải là thư mục.
EEXISTThao tác tạo tệp thất bại vì đường dẫn đích đã tồn tại.
EPIPEĐã cố ghi vào pipe hoặc socket mà đầu đọc đã bị đóng.
ENOSPCĐĩa đã đầy hoặc bảng inode đã cạn kiệt.
ERR_HTTP_HEADERS_SENTĐã cố thiết lập header hoặc gửi phản hồi sau khi phản hồi HTTP đã được gửi.
ERR_MODULE_NOT_FOUNDKhông thể resolve import ES module vì tệp được chỉ định không tồn tại.
ERR_REQUIRE_ESMĐã dùng require() để tải ES module, điều này không được phép.
ERR_INVALID_ARG_TYPEMột API của Node.js nhận được đối số sai kiểu.
ERR_INVALID_URLĐã truyền URL không hợp lệ cho constructor URL hoặc một API của Node.js.
ERR_SOCKET_BAD_PORTSố cổng không hợp lệ đã được chỉ định cho thao tác mạng.
ERR_TLS_CERT_ALTNAME_INVALIDTên host không khớp với bất kỳ Subject Alternative Name (SAN) nào trong chứng chỉ TLS của máy chủ.
ERR_BUFFER_OUT_OF_BOUNDSĐã cố đọc hoặc ghi ngoài phạm vi của một Buffer.
ERR_STREAM_PREMATURE_CLOSEStream bị đóng trước khi hoàn thành việc đọc hoặc ghi toàn bộ dữ liệu.
ERR_WORKER_OUT_OF_MEMORYLuồng Worker đã hết bộ nhớ.
FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memoryEngine V8 hết bộ nhớ heap, khiến tiến trình Node.js bị crash.
ERR_MISSING_ARGSMột đối số bắt buộc không được truyền vào hàm API của Node.js.
ERR_UNESCAPED_CHARACTERSChuỗi chứa ký tự chưa được escape đã được truyền vào nơi yêu cầu chuỗi đã escape.
ERR_UNKNOWN_ENCODINGEncoding không xác định hoặc không được hỗ trợ đã được truyền cho API của Node.js.
ERR_CRYPTO_INVALID_STATEMột thao tác mã hóa được thực hiện trong trạng thái không hợp lệ.
ERR_DLOPEN_FAILEDMột addon native (file .node C++) không thể tải được.
ERR_OSSL_EVP_UNSUPPORTEDMột thao tác OpenSSL không được hỗ trợ, thường do Node.js 17+ sử dụng OpenSSL 3.0 vốn vô hiệu hóa các thuật toán cũ.
ERR_SERVER_ALREADY_LISTENPhương thức `server.listen()` được gọi khi server đang trong trạng thái lắng nghe.
ERR_FS_CP_DIR_TO_NON_DIRĐã cố sao chép một thư mục tới một đích không phải thư mục.
Error: Cannot find moduleNode.js không thể tìm thấy module được chỉ định trong bất kỳ đường dẫn tìm kiếm nào.
ECONNABORTEDMột kết nối bị hủy bỏ, thường do timeout ở phía client.
EHOSTUNREACHHost đích không thể truy cập được, thường do sự cố định tuyến mạng.
ENETUNREACHMạng không thể truy cập; không tìm thấy tuyến đường nào đến mạng đích.
ERR_ASSERTIONMột assertion từ module `assert` của Node.js đã thất bại.
TypeError: Converting circular structure to JSONJSON.stringify() gặp một đối tượng có tham chiếu vòng không thể tuần tự hóa sang JSON.
TypeError: Method called on incompatible receiverMột phương thức được gọi với giá trị `this` không đúng kiểu mong đợi.
TypeError: Cannot delete property of objectĐã cố xóa một thuộc tính non-configurable của đối tượng trong strict mode.
TypeError: Cannot convert a Symbol value to a stringĐã cố chuyển đổi ngầm định một Symbol sang chuỗi, điều này không được phép.
TypeError: Cannot add property, object is not extensibleĐã cố thêm thuộc tính vào một đối tượng đã bị làm non-extensible.
SyntaxError: Applying delete to unqualified name in strict modeToán tử delete được dùng trên tên biến thuần trong strict mode, điều này không được phép.
SyntaxError: Missing initializer in const declarationMột biến const được khai báo mà không có giá trị khởi tạo.
SyntaxError: JSON.parse: bad parsingThông báo lỗi đặc thù của Firefox khi truyền JSON không hợp lệ vào JSON.parse().
ERR_STREAM_WRITE_AFTER_ENDCó cố gắng ghi vào stream sau khi stream đã bị đóng.
ERR_HTTP2_STREAM_ERRORĐã xảy ra lỗi trên một stream HTTP/2.
ERR_CHILD_PROCESS_STDIO_MAXBUFFERTiến trình con tạo ra output vượt quá giới hạn maxBuffer.
ERR_INVALID_RETURN_VALUEMột hàm trả về giá trị không đúng kiểu dự kiến.
ERR_UNHANDLED_REJECTIONNode.js được cấu hình để throw khi có promise rejection không được xử lý và đã phát hiện một trường hợp như vậy.
ERR_ASYNC_CALLBACKGiá trị không phải hàm được truyền vào vị trí mong đợi một async callback.
ERR_PACKAGE_PATH_NOT_EXPORTEDMột subpath của package được import nhưng không được khai báo trong trường exports của package.
ERR_IMPORT_ASSERTION_TYPE_FAILEDMột import assertion chỉ định kiểu không khớp với kiểu module thực tế.
ERR_NETWORK_IMPORT_DISALLOWEDĐã thử import qua mạng (HTTP/HTTPS) nhưng cấu hình Node.js hiện tại không cho phép.
ERR_INSPECTOR_ALREADY_ACTIVATEDNode.js inspector (debugger) đã được kích hoạt nhiều hơn một lần.
DOMException: InvalidStateErrorĐã thực hiện thao tác trên một đối tượng đang ở trạng thái không hợp lệ cho thao tác đó.
DOMException: DataCloneErrorMột đối tượng không thể được sao chép bằng thuật toán structured clone.