javascript - 为什么第一个console.log 没有定义greeter?
问题描述
const greeter = 'CodeQuotient';
const sayHi = function greetings()
{
console.log(`${greeter} says, 'Hi!'`);
var greeter = 'CQ';
console.log(`${greeter} says, 'Hi!'`);
}
sayHi();
如果我运行此代码,则输出为
undefined says, 'Hi!'
CQ says, 'Hi!'
我想问为什么第一个 console.log 的第一个欢迎程序是未定义的
而且,如果我删除了内部 greeter 变量,则外部变量将分配给两个 console.logs 。为什么?
const greeter = 'CodeQuotient';
const sayHi = function greetings() {
console.log(`${greeter} says, 'Hi!'`);
console.log(`${greeter} says, 'Hi!'`);
}
sayHi();
删除内部greeter变量后上述代码的输出是
CodeQuotient says, 'Hi!'
CodeQuotient says, 'Hi!'
为什么?
解决方案
推荐阅读
- npm - npm - material-design-icons 的压缩包数据似乎已损坏
- angular - 当我转到其他组件时如何保持产品被选中
- angular - 如何显示 0.00 而不是 0
- c++ - Gcc/G++ 编译成 NIOS 2 程序集
- sql - 列出姓氏,首先显示在以“C”开头的首字母上,然后列出所有
- python - 如何将 Elasticsearch 数据复制到 SQL Server
- go - 为什么直接实现的接口上的这种类型断言会失败?
- python - Python 多核 CSV 短程序,需要建议/帮助
- java - Orbeon 软件界面与 Marklogic 的集成
- drupal - Create custom menu tab on a users profile page in Drupal 8