unity cannot clamp left rotation code example

Example 1: unity clamp rotation

float rotationX = 0;
float rotationY = 0;
// you might also have some rotation speed variable
void Update() {
   rotationX += Input.GetAxis("Vertical") * Time.deltaTime;
   rotationX = Mathf.Clamp(rotationX, minRotationX, maxRotationX);
   rotationY += Input.GetAxis("Horizontal" * Time.deltaTime;
   transform.rotation = Quaternion.Euler(rotationX, rotationY, 0);
 }

Example 2: how to clamp transform.rotation

headRotation = Input.GetAxis("Mouse Y") * speed;
 transform.Rotate(0, 0, -headRotation, Space.Self);
 transform.eulerAngles.y = Mathf.Clamp(transform.eulerAngles.y, -90, 90);