spawning clone gameobjects instead of prefabs

My spawner is supposed to spawn prefabs because the prefabs go towards a target, but instead, it spawns clones of the prefab as a gameobject and the new gameobject doesn’t go towards the target. Is there a way to spawn prefabs instead of clone gameobjects?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;

public class spawner : MonoBehaviour

public GameObject objectToSpawn;
public GameObject newobject;

// Use this for initialization
void Start()
    InvokeRepeating("SpawnObject", 1f, 1f);

// Update is called once per frame
void SpawnObject()
    float randomX = Random.Range(387, 120);
    Vector3 randomLocation = new Vector3(randomX, 3, 455);
    newobject = Instantiate(objectToSpawn, randomLocation, transform.rotation);


A prefab is just a blueprint for actual objects. Instantiate always makes copies of whatever it does that. There is no reason however to access any script on the copy after it was instantiated to inject information, like the target you are talking about.
Only serialized data gets duplicated as their content is known prior the instantiation.