Deprecated: Creation of dynamic property ATTO_PluginUpdate::$license is deprecated in /mnt/storage/stage/www/wp-content/plugins/advanced-taxonomy-terms-order/include/class.atto.plugin-updater.php on line 29
Watch Joseph Gordon-Levitt nail this vintage Janet routine - Attitude
Deprecated: mb_convert_encoding(): Handling HTML entities via mbstring is deprecated; use htmlspecialchars, htmlentities, or mb_encode_numericentity/mb_decode_numericentity instead in /mnt/storage/stage/builds/streampublishing-attitude-server/latest-1.16.1-1793359797.063729/pugpig-attitude-theme/functions.php on line 974
Skip to main content
Deprecated: mb_convert_encoding(): Handling HTML entities via mbstring is deprecated; use htmlspecialchars, htmlentities, or mb_encode_numericentity/mb_decode_numericentity instead in /mnt/storage/stage/builds/streampublishing-attitude-server/latest-1.16.1-1793359797.063729/pugpig-attitude-theme/functions.php on line 974

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 218

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 116

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 132

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 200

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 225

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedField::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedField.php on line 236

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 78

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 96

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 87

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 105

Deprecated: Return type of PugpigSiteGoogleAnalytics_Vendor\Google\Protobuf\Internal\RepeatedFieldIter::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/storage/stage/builds/pugpig-site-server/latest-1.61.0-1793359797.063729/pugpig-site-google-analytics/src/vendor/google/protobuf/src/Google/Protobuf/Internal/RepeatedFieldIter.php on line 69

Home Culture Culture Film & TV

Watch Joseph Gordon-Levitt nail this vintage Janet routine

By Nick Bond

Joseph Gordon-Levitt in Janet Jackson drag, performing a near-perfect recreation of her iconic Rhythm Nation video? This combines so many of our biggest interests.

Gordon-Levitt was a contestant on last night’s Christmas finale episode of the US program Lip Sync Battle, in which celebrities compete against each other to perform impressive mimed homages to some of the biggest singers around.

Janet

From the opening bars of the 1989 smash hit onwards, there was no denying Gordon-Levitt nailed his performance – as Chrissy Teigen put it, he went “full Janet.” Check it out:

 

Of course, this isn’t Gordon-Levitt’s first time drag – only last month he frocked up to appear in a music video for Todrick Hall. And funnily enough, this also isn’t the only recent homage to Rhythm Nation on US television – mere weeks ago, R&B singer Tamar Braxton recreated the video during her stint on Dancing With The Stars:

With Janet having returned last month after a seven-year musical absence with a surprise number one album, Unbreakable, it’s safe to say the Janet renaissance is in full swing. That’s Miss Jackson if ya nasty…

More stories:

Russell Tovey and Jonathan Groff’s ‘Looking’ love affair almost didn’t happen

Watch | Zac Efron does the Macarena in a thong in ‘Dirty Grandpa’ trailer