make api behave more like primitive array methods