With NaCl, because Cl’s proton influence is stronger than that of Na, and that Cl has an almost-full outermost shell, Cl easily rips away Na’s singular outermost shell electron. In O2, each atom exerts the same proton strength. Furthermore, each one's outermost shell is nearly complete, with each possessing 6 of the 8 electrons needed. SO, what’s an oxygen atom to do?
SHARE. Each oxygen atom shares two of its p electrons with the other. So, NOW if you count the 2s and 2p electrons for each atom, you get 2-2s plus 6-2p electrons=8=OCTET achieved. 2 additional electrons from one oxygen atom have been shared with its partner oxygen atom. Likewise, the partner oxygen atom benefits from the sharing of two p-electrons from the first oxygen atom.
So, can anyone guess what charge each oxygen atom holds in a covalent bond?
Each oxygen atom holds no charge, or is neutral! Is this the case for all covalently bonded molecules? Certainly not, if each atom is a different atom. This means each atom will have a different number of protons, which can actually pull shared electrons closer to it, due its greater positive force of the aggregate protons! Then, the molecule will have dipole moments.