No overlaping instantiate

Okey so i have a room with 4 door spawn points

And a basic example script

Void Start() {
    for(int i = 0; i < DoorAmount; i++)
            {
            int Choose = Random.Range (0, 4);
            Instantiate (NormalDoor, DoorSpawn [Choose].position, DoorSpawn [Choose].rotation);
            }
}

But how can i make that it checks if theres no door,and if its true,then spawn it? Because i sometimes get two doors spawned in same place.

I just dont know what method should i use.

When you instantiate a door, attache it to the room as a child.

The next time you instantiate a door, you can check the room to see if any of its children are doors, and from that where the doors are. Then you can add a new door to a wall that doesn’t have one.