It's correct, yes. Whether it's the right thing to do depends entirely on what else you're going to do with group1. If, for instance, you wanted to use the length property arrays have, then you wouldn't want to do that, because it won't have a length.
In general, if you're going to use something like an array, use an array; if you're going to use it as a non-array object, use an object. But in JavaScript, standard arrays are just objects with a bit of special behavior (details on my anemic little blog), so you can use an object like that if you want.
FWIW, here's the array version of that:
var group1 = [
{fruits: "Apple", qtystock1: "1"},
{fruits: "Durian", qtystock4: "2"},
{fruits: "Orange", qtystock1: "3"}
];
console.log(group1[0].qtystock4); //Should give "undefined"
And a more concise version of the object you already have:
var group1 = {
0: {fruits: "Apple", qtystock1: "1"},
1: {fruits: "Durian", qtystock4: "2"},
2: {fruits: "Orange", qtystock1: "3"}
};
console.log(group1[0].qtystock4); //Should give "undefined"
For the data as quoted, I'd probably use an array. I'd also probably use a consistent property name for qtystock1/qtystock4, but maybe it makes sense when you have the greater context.