Hướng dẫn can you do nested functions in javascript? - bạn có thể làm các hàm lồng nhau trong javascript không?

Các chức năng lồng nhau có thể là cơ sở để viết một nhóm mô-đun gồm các chức năng liên quan, loại nửa để lập trình hướng đối tượng đầy đủ [chỉ các lớp tĩnh].

Dưới đây là một ví dụ về một nhóm các chức năng như vậy, trong trường hợp này để chuyển đổi giá trị thành chuỗi JSON hoặc chuỗi JSON thành một giá trị.

Lưu ý cách các hàm bên trong được nhóm thành một đối tượng bên trong hàm bên ngoài và cách thức đối tượng được lưu trữ vào một tên nhóm. Đây là tên duy nhất có thể nhìn thấy trực tiếp từ bên ngoài nhóm. Để đạt được bất kỳ chức năng chứa nào từ bên ngoài, bạn chỉ cần viết tên nhóm, một khoảng thời gian, sau đó là tên hàm. Để đạt được một hàm chứa từ bên trong, bạn có thể sử dụng cùng một ký hiệu hoặc 'cái này', một khoảng thời gian, sau đó là tên hàm.

//--------------------------------------------------------------------//
//      Module J:
//          Convert from and to JSON strings
//--------------------------------------------------------------------//
const J=NewJ[];
function NewJ[]
    {
    const mod=
        {
        From:[str]=>
            {
            return JSON.parse[str];
            }, // From
        To:[val]=>
            {
            return JSON.stringify[val,null,3];
            } // To
        }; // mod
    return mod;
    } // NewJ

//--------------------------------------------------------------------//
//      End Module J
//--------------------------------------------------------------------//

Đây là một bài kiểm tra:

console.log[J.To[{A:'a'}]];

Đầu ra bảng điều khiển:

{
   "A": "a"
}

Xem thảo luận

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Xem thảo luận

    Cải thiện bài viết

    Lưu bài viết

    Đọc
    Approach:

    • Bàn luận
    • Ở đây, nhiệm vụ là tạo các chức năng lồng nhau, JavaScript hỗ trợ các chức năng lồng nhau. Trong các ví dụ được đưa ra bên dưới, trở lại đầu ra là sự kết hợp của đầu ra từ chức năng bên ngoài cũng như hàm bên trong [chức năng lồng nhau] .Approach:
    • Viết một chức năng bên trong một hàm khác.fun[a][b] where a is parameter to outer and b is to the inner function.
    • Thực hiện cuộc gọi đến hàm bên trong trong câu lệnh trả về của hàm bên ngoài.

    Gọi nó là niềm vui [a] [b] trong đó A là tham số ở bên ngoài và B là hàm bên trong. This example using the approach discussed above.

     

     

         

    console.log[J.To[{A:'a'}]];
    
    1 

    console.log[J.To[{A:'a'}]];
    
    5
    console.log[J.To[{A:'a'}]];
    
    6

    console.log[J.To[{A:'a'}]];
    
    1
    console.log[J.To[{A:'a'}]];
    
    8
    console.log[J.To[{A:'a'}]];
    
    3
    {
       "A": "a"
    }
    
    0

        

    console.log[J.To[{A:'a'}]];
    
    8head

    Cuối cùng trả về đầu ra kết hợp từ chức năng lồng nhau.

    Ví dụ 1: Ví dụ này sử dụng phương pháp được thảo luận ở trên.

    console.log[J.To[{A:'a'}]];
    
    5 

         

    console.log[J.To[{A:'a'}]];
    
    1
    console.log[J.To[{A:'a'}]];
    
    8html0
    {
       "A": "a"
    }
    
    0

    console.log[J.To[{A:'a'}]];
    
    1 5
    {
       "A": "a"
    }
    
    0

    console.log[J.To[{A:'a'}]];
    
    1

    Bài Viết Liên Quan

    Chủ Đề