user10840377
user10840377

Reputation:

Variable not displayed in console.log

here is my code.

let userName = 'dave'
userName = userName ? console.log(`Hello, ${userName}`) : console.log('Hello!')

let userQuestion = 'Am I crazy'
console.log(`${userName} asked: ${userQuestion}`)

expected output

Hello, dave
dave asked: Am I crazy

actual output

Hello, dave
undefined asked: Am I crazy

Why is it showing 'undefined` ?

Upvotes: 0

Views: 134

Answers (3)

Amit11794
Amit11794

Reputation: 158

You are assigning incorrect value in the second line, which makes it undefined.

let userName = 'dave'
//userName = userName ? console.log(`Hello, ${userName}`) : console.log('Hello!')
console.log(userName ? `Hello, ${userName}` : 'Hello!')

let userQuestion = 'Am I crazy'
console.log(`${userName} asked: ${userQuestion}`)

Upvotes: 1

Lionel Ding
Lionel Ding

Reputation: 192

userName = userName ? console.log(`Hello, ${userName}`) : console.log('Hello!')

This line of code changes the content of the variable userName by whatever the console.log() return. And they return undefined

Upvotes: 2

Deepu Reghunath
Deepu Reghunath

Reputation: 9663

you are trying to assign the console.log to userName and using it. change the code to

let userName = 'dave'
console.log(userName ? `Hello, ${userName}` : 'Hello!');

let userQuestion = 'Am I crazy'
console.log(`${userName} asked: ${userQuestion}`)

or you can use the line as follows.

userName ? console.log(`Hello, ${userName}`) : console.log('Hello!')

let userName = 'dave'
userName ? console.log(`Hello, ${userName}`) : console.log('Hello!');


let userQuestion = 'Am I crazy'
console.log(`${userName} asked: ${userQuestion}`)

Upvotes: 6

Related Questions