For me, anything that has calories, yet provides little of nutritive value beyond calories is "junk food." A cheese and fruit plate and a serving of Doritos might have the same calories, but the former is a heavy snack/light meal while the latter is "junky" because cheese and apples also have protein, fiber, and calcium. Doritos have...calories. Lots and lots of calories.
There are some foods that are in a gray area. Ice cream springs immediately to mind. It has nutritive value--the calcium and protein in it don't disappear when they add sugar to it--but it's so calorie-dense that full-fat ice cream is very rarely worth it. Rather than call it junk, I prefer to think of it as a strictly-in-moderation food or look for similar stuff with a higher nutrient-to-calorie ratio--low-calorie ice cream or flavored, sweetened Greek yogurt, for instance.
I want to get as much nutritional bang as I can get for my buck, so even my "junky" foods have to have something worthwhile about them. That doesn't mean I can excuse a meal of cheese, whole wheat crackers, and ice cream as "protein, fiber, and calcium."
It just means that food has to pull its weight calorically and nutritionally. Rice cakes are as much "junk" as Cheez-its because both are nutritional wastelands even though one is a low-calorie wasteland.