Bài tập AI Native theo cấp độ

Cấp độ 2 · Ứng dụng · Trạng thái và luồng công việc

Áp dụng bản vá JSON

Gộp đối tượng, xóa trường null và thay thế mảng.

Mô tả bài toán

Viết function solution(target, patch). Đầu vào và đầu ra là giá trị JSON. Không sửa mảng hoặc đối tượng đầu vào. Không hỗ trợ thư viện ngoài, truy cập mạng hoặc hàm bất đồng bộ. target and patch are JSON values. A nonobject patch (including null and arrays) replaces the entire target. For an object patch, start with {} if target is not an object. Delete keys whose patch value is null; recursively apply all other keys. Replace arrays wholesale. Preserve input and treat '__proto__' and 'constructor' as ordinary data keys. Maximum depth 20. Giới hạn đầu vào: tối đa 50.000 phần tử mỗi mảng và 1.000 ký tự mỗi chuỗi. Số phải hữu hạn; số nguyên và tổng số nguyên nằm trong phạm vi số nguyên an toàn của JavaScript. Các kiểu và quy tắc hợp lệ khác theo mô tả ở trên.

Ví dụ đầu vào và đầu ra

Ví dụ 1

Đối số của hàm

[
  {
    "a": 1,
    "b": 2
  },
  {
    "a": null,
    "c": 3
  }
]

Giá trị trả về

{
  "b": 2,
  "c": 3
}
Ví dụ 2

Đối số của hàm

[
  {
    "nested": {
      "a": 1,
      "b": 2
    }
  },
  {
    "nested": {
      "a": 3
    }
  }
]

Giá trị trả về

{
  "nested": {
    "a": 3,
    "b": 2
  }
}
Ví dụ 3

Đối số của hàm

[
  {
    "a": true
  },
  {
    "a": false
  }
]

Giá trị trả về

{
  "a": false
}
Luyện tập không tốn điểm, không giới hạn thời gian hay lượt nộp. Tự do dùng AI và tìm kiếm. Đăng nhập để chạy ví dụ hoặc kiểm tra trên máy.

81 / 20.000 ký tự

Thêm kiểm thử riêng · tùy chọn

Nhập mảng đối số JSON theo thứ tự target, patch. Kiểm thử này chạy cùng ba ví dụ.

Lưu cả hai tệp trong cùng thư mục và chạy lệnh này bằng Node.js. Đọc trường checks để xem kết quả từng ví dụ.

node verify-json-merge-patch.mjs
문의하기

서비스명: 포트포올
문의는 운영자에게 이메일로 전송됩니다.

이메일과 문의 내용은 답변을 위해 운영자 및 메일 발송 서비스로 전송됩니다. 비밀번호·결제정보·민감한 개인정보는 입력하지 마세요.