【问题标题】:Why am I having trouble with putting the ${} in javascript code? [duplicate]为什么我在将 ${} 放入 javascript 代码时遇到问题? [复制]
【发布时间】:2019-05-13 14:12:49
【问题描述】:

所以,学习 javascript 代码非常新,我遇到的问题之一是它不允许我在应该说 console.log('For循环编号:${1}');

const todos = [
    {
        id: 1,
        text: 'Take out the trash',
        isCompleted: true 
    },
    {
        id: 2,
        text: 'Meeting with boss',
        isCompleted: true 
    },
    {
        id: 3,
        text: 'Dentist appt',
        isCompleted: true 
    }
];

// For
for(let i = 0; i < 10; i++) {
    console.log('For Loop Number: ${1}');
}

现在它应该显示的是控制台中带有 For Loop 的数字列表,但我不明白。对 javascript 非常陌生,所以请记住这一点。

【问题讨论】:

  • 你想要console.log(`For Loop Number: ${i}`);吗?阅读template literals。但这是ES6 功能,或者您可以使用console.log("For Loop Number: " + i);
  • 你使用的是单引号
  • 你需要打印 'i' 而不是 1 并将 ' 替换为 `
  • 使用许多键盘左上角的转义键下方的反勾号。使用反引号而不是引号。

标签: javascript


【解决方案1】:

当涉及template literals 时,您应该将变量/属性作为表达式传入。此外,您应该使用反引号(`),而不是标准的单引号或双引号。

for(let i = 0; i < 10; i++) {
  console.log(`For Loop Number: ${i}`);
}

如您所见,您的代码在进行相关更改后会正常工作。

const todos = [
  {
    id: 1,
    text: 'Take out the trash',
    isCompleted: true
  },
  {
    id: 2,
    text: 'Meeting with boss',
    isCompleted: true
  },
  {
    id: 3,
    text: 'Dentist appt',
    isCompleted: true
  }
];

// For
for (let i = 0; i < 10; i++) {
  console.log(`For Loop Number: ${i}`);
}

【讨论】:

    【解决方案2】:

    尝试使用反引号代替引号,使用 i 代替 1。

    for(let i = 0; i < 10; i++) {
        console.log(`For Loop Number: ${i}`);
    }
    

    【讨论】:

    • 虽然答案为问题中描述的问题提供了解决方案,但为了使其对读者更有用,请描述为什么它以这种方式工作,而它不像问题中那样工作。还要放一个指向相关文档页面的链接。
    【解决方案3】:

    你需要使用`反勾号。

    const todos = [
        {
            id: 1,
            text: 'Take out the trash',
            isCompleted: true 
        },
        {
            id: 2,
            text: 'Meeting with boss',
            isCompleted: true 
        },
        {
            id: 3,
            text: 'Dentist appt',
            isCompleted: true 
        }
    ];
    
    // For
    for(let i = 0; i < 10; i++) {
        console.log(`For Loop Number: ${i}`);
    }

    【讨论】:

    • 仅供参考,` 是反引号(或坟墓),~ 是波浪号
    • 抱歉错过了!
    • 虽然答案为问题中描述的问题提供了解决方案,但为了使其对读者更有用,请描述为什么它以这种方式工作,而它不像问题中那样工作。还要放一个指向相关文档页面的链接。
    【解决方案4】:

    改变

    for(let i = 0; i < 10; i++) {
        console.log('For Loop Number: ${1}');
    }
    

    for(let i = 0; i < 10; i++) {
        console.log(`For Loop Number: ${i}`);
    }
    

    【讨论】:

    • 虽然答案为问题中描述的问题提供了解决方案,但为了使其对读者更有用,请描述为什么它以这种方式工作,而它在问题中不起作用。还要放一个指向相关文档页面的链接。
    • 应该是${i},而不是${1}
    • 当您使用循环时,您的值将是 store define let/const/var。如果您想阅读特定的任何一个位置,那么您的控制台将是 console.log(For loop Number : ${i[1]})
    猜你喜欢
    • 2020-02-07
    • 2021-10-12
    • 2012-11-13
    • 1970-01-01
    • 2021-04-05
    • 1970-01-01
    • 1970-01-01
    • 2013-12-13
    • 2020-08-03
    相关资源
    最近更新 更多