Preheat the oven to 350ºF. Grease a 9-inch springform pan with non-stick cooking spray. Set aside.
In a large mixing bowl, mix together flour, baking soda, cinnamon, nutmeg, and salt. Set aside.
In a separate bowl, whisk together vegetable oil, sugar, brown sugar, eggs, and vanilla extract until combined. Pour this mixture into the dry ingredients. Stir using a rubber spatula just until combined.
Gently fold in grated carrots, crushed pineapple, and walnuts. Don’t overmix. Set aside.
Prepare the cream cheese mixture. Place the softened cream cheese in a large mixing bowl. Meanwhile, whisk together the sugar and flour in another bowl. Add this to the cream cheese and whisk until smooth. Pour in the vanilla extract and eggs, one at a time, whisking after each addition, until smooth.
Assemble the cake. Pour ⅔ of the carrot cake batter into the prepared springform pan and spread it evenly. Spoon about ⅓ of the cream cheese mixture in the center, don’t spread it. Spoon the remaining carrot cake batter. Then, completely cover with the remaining ⅔ of the cream cheese mixture. Bake in the preheated oven for 60-65 minutes or until mostly set, but the center is slightly jiggling. Remove from the oven and let cool for at least 1 hour. Then, refrigerate overnight so it can set completely.
When the cake is already cooled, prepare the frosting. Beat together softened cream cheese, butter, vanilla extract, reserved pineapple juice, powdered sugar, and salt until smooth. Spread evenly over the cheesecake and refrigerate until ready to serve. Remove from the pan, slice, and enjoy!