Làm cách nào để xóa thuộc tính khỏi đối tượng?

Bạn có một đối tượng với một số thuộc tính và bạn muốn loại bỏ một số thuộc tính này trước khi sử dụng thêm đối tượng

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    const json = JSON.stringify[person];
    console.log[json];
    // => {"firstName":"John","lastName":"Doe","gender":"Male","age":34}
    // What can we do if we don't want the `age` property in the JSON string? -->

Ở đây, chuỗi JSON cũng chứa thuộc tính

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
5. Tuy nhiên, bạn sẽ gửi chuỗi qua mạng và máy chủ ở đầu bên kia sẽ không sử dụng thuộc tính
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
5. Vì vậy, bạn muốn xóa thuộc tính
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
5 khỏi đối tượng
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
8 trước khi chuyển đổi nó thành chuỗi JSON

Giải pháp

Bạn có thể sử dụng toán tử

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
9, đơn giản hơn hoặc hủy đối tượng, có thể xóa nhiều thuộc tính cùng một lúc

Sử dụng toán tử
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
9

Sử dụng toán tử

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
9 để xóa thuộc tính khỏi đối tượng

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];

Toán tử

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
9 sẽ trả về nếu thành công và luôn trả về
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
1 - ngay cả khi thuộc tính không tồn tại. Cuộc gọi sẽ chỉ trả về
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
2 khi một thuộc tính không thể định cấu hình - đó là trường hợp đối với các thuộc tính trên các đối tượng tích hợp như
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
3 của một
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
4

Sử dụng phá hủy đối tượng

Toán tử

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
9 chỉ có thể xóa một thuộc tính cho mỗi cuộc gọi. Vì vậy, nếu bạn muốn xóa các thuộc tính
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
5 và
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
7, thì bạn phải thực hiện hai cuộc gọi
    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
9. Thay vào đó, bạn có thể sử dụng tính năng hủy đối tượng để xóa nhiều thuộc tính bằng một lệnh gọi

    const person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Destructure the age and gender
    const {age, gender, ...personTrimmed} = person;
    const json = JSON.stringify[personTrimmed];
    console.log[json];

Lưu ý rằng quá trình hủy chậm hơn đáng kể so với toán tử

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
9 vì nó tạo một đối tượng mới sao chép từ đối tượng ban đầu. Hủy cấu trúc cũng không được hỗ trợ bởi bất kỳ phiên bản IE nào

Trong hướng dẫn này, chúng ta sẽ xem xét một số phương pháp để xóa thuộc tính khỏi đối tượng JavaScript. Và so sánh chúng để hiểu cái nào phù hợp trong một ngữ cảnh nhất định

Hãy tiến về phía trước để thảo luận về điều này

Sử dụng toán tử xóa

Ở đây, toán tử xóa sẽ xóa các phím khỏi đối tượng, mỗi lần một phím. Toán tử xóa không xóa bộ nhớ trực tiếp

Từ khóa xóa chỉ hoạt động trên các đối tượng. Chúng tôi không thể sử dụng nó trên các biến hoặc chức năng. Chúng ta không nên sử dụng từ khóa xóa trên các thuộc tính đối tượng JavaScript được xác định trước vì nó có thể gây ra lỗi. Thuộc tính đã xóa hiển thị không xác định nếu chúng tôi cố gắng truy cập nó

Thao tác xóa có thể thay đổi được vì nó sửa đổi đối tượng thực tế. Nhưng đây là cách đúng để xóa thuộc tính khỏi một đối tượng

Người dùng có thể làm theo cú pháp dưới đây để sử dụng phương pháp này

cú pháp

________số 8

Đầu tiên được sử dụng khi tài sản được biết đến. Tiếp theo là khi thuộc tính là giá trị thời gian chạy

Tính chất

  • đối tượng - Tên của một đối tượng

  • thuộc tính - Tên của thuộc tính cần xóa

Ví dụ

Trong chương trình này, chúng ta có một đối tượng JavaScript tên là employee. Chúng tôi đang xóa thuộc tính tuổi khỏi đối tượng này bằng cách sử dụng từ khóa xóa

Remove a property from a JavaScript object using the delete keyword

Bằng cách đặt Giá trị thuộc tính thành "không xác định"

Chúng tôi có thể sử dụng tùy chọn này khi chúng tôi ở trong tình huống chúng tôi đang sử dụng một số lượng lớn các vòng lặp. Chúng tôi đang làm cho quy trình xóa trở nên tối ưu bằng cách đặt giá trị thuộc tính thành 'không xác định'. Thao tác xóa chậm hơn 50 lần so với thao tác gán đơn giản với 'không xác định'

Trong thực tế, tài sản không bị xóa. Nó vừa được dọn sạch

cú pháp

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
0

Ở đây, chúng tôi đang gán undefined cho thuộc tính của đối tượng

Ví dụ

Trong chương trình này, tên đối tượng của chúng ta là màu. Sử dụng cú pháp gán ở trên, chúng ta loại bỏ thuộc tính place khỏi đối tượng màu

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
1

Sử dụng hủy cấu trúc đối tượng

Đây là ý tưởng dễ dàng. Chúng ta nên hủy cấu trúc đối tượng thành thuộc tính mà chúng ta muốn xóa. Sau đó lưu các thuộc tính còn lại trong một đối tượng khác

Phá hủy đối tượng là quá trình trích xuất dữ liệu từ các đối tượng sang các biến mới. Phá hủy đối tượng là một phương pháp bất biến vì nó không thay đổi đối tượng thực tế, thay vào đó tạo ra một đối tượng khác để lấy các thuộc tính cần thiết ngoại trừ thuộc tính cần loại bỏ

Ưu điểm chính là phương pháp này loại bỏ nhiều thuộc tính cùng một lúc

cú pháp

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
2

Ở đây, cú pháp đầu tiên được sử dụng khi chúng ta biết tên thuộc tính. Cú pháp thứ hai được sử dụng khi tên thuộc tính thay đổi động

Thông số

  • prop − Thuộc tính mà chúng ta cần xóa

  • stayObj − Đối tượng sau khi xóa thuộc tính cụ thể

  • obj − Đối tượng chính

  • tên - Một biến để sử dụng tên thuộc tính trong thời gian chạy

  • removeProperty − Một từ khóa tích hợp trong cú pháp

Ví dụ

Trong ví dụ này, chúng ta có đối tượng người. Chúng tôi đang xóa vị trí và các thuộc tính bằng cách sử dụng toán tử trải rộng

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
3

Sử dụng phương thức reduce[]

Ở đây, hàm reduce[] là một hàm mảng tích hợp. Đầu vào của hàm này là một tập hợp và hàm rút gọn là một đối số

Phương thức lặp qua tất cả các phần tử và sửa đổi bộ tích lũy, hoạt động như một đối tượng mới

cú pháp

    let person = {
        firstName: "John",
        lastName: "Doe",
        gender: "Male",
        age: 34
    };

    // Delete the age property first
    delete person.age;
    let json = JSON.stringify[person];
    console.log[json];
4

Ở đây, logic chức năng bộ giảm tốc bộ tích lũy được sử dụng để loại bỏ thuộc tính

Tính chất

  • factObj − Đối tượng JSON

  • bộ tích lũy - Nếu khóa nhỏ hơn giá trị bộ tích lũy, giá trị khóa sẽ trở thành bộ tích lũy tiếp theo

  • key − Giá trị hiện tại = Key

Ví dụ

Trong ví dụ này, đối tượng của chúng tôi là vật nuôi. Chúng ta sẽ loại bỏ thuộc tính gift một mình khỏi đối tượng này. Bộ tích lũy phương thức rút gọn và so sánh giá trị khóa diễn ra trong mọi vòng lặp. Cuối cùng, chúng ta có được đối tượng không có thuộc tính gift

Hướng dẫn này đã giúp chúng tôi tìm hiểu cách xóa thuộc tính của đối tượng JavaScript

Phương pháp xóa rất đơn giản. Gán không xác định cho giá trị thuộc tính là một cách tiếp cận tồi tệ hơn. Cú pháp phá hủy là một cách tiếp cận tốt vì nó không sửa đổi đối tượng thực tế

Phương pháp cuối cùng là hàm rút gọn, đây là một lựa chọn tốt. Người dùng có thể chọn bất kỳ phương pháp nào theo yêu cầu

Làm cách nào để sử dụng loại bỏ thuộc tính khỏi đối tượng JavaScript?

Chúng tôi có thể xóa Thuộc tính khỏi Đối tượng JavaScript bằng cách sử dụng Toán tử xóa, Phá hủy đối tượng và Phản ánh. phương thức deleteProperty[] . Toán tử xóa và Reflect. phương thức deleteProperty[] xóa thuộc tính đã chỉ định khỏi đối tượng ban đầu.

Làm cách nào để xóa thuộc tính khỏi đối tượng trong C#?

Bạn không thể xóa thuộc tính, trừ khi bạn xóa vĩnh viễn thuộc tính , trong mọi trường hợp. Tuy nhiên, điều bạn có thể làm là tạo nhiều lớp, trong hệ thống phân cấp lớp, trong đó một lớp có thuộc tính còn lớp kia thì không. ok Tôi đang sử dụng cơ sở dữ liệu Schemaless nên giá trị rỗng và trống cũng lưu trữ không gian trong cơ sở dữ liệu, đó là lý do.

Chủ Đề