当前位置: 首页 > 知识库问答 >
问题:

为什么只有在第二种情况下执行时才会出现错误?

井旺
2023-03-14

第二种情况有什么问题?

function f(x) {   
    return (x as string).toLocaleUpperCase();
}

console.log("hello: "+ f("mr.")); // hello: MR.
console.log("hello: "+ f(0));

未捕获的TypeError:x.toLocaleUpperCase在HtmlButtoneElement的f(:2:14)
在:5:25
处不是函数。执行按钮。onclick

共有1个答案

洪伟兆
2023-03-14

据我所知,您的typescript代码被转录成以下javascript代码:

function f(x) {
    return x.toLocaleUpperCase();
}
console.log("hello: " + f("mr.")); // hello: MR.
console.log("hello: " + f(0));

由于数字(如0)没有一个toLocalUpperCase字段,所以会出现错误。

我不确定这是否是最像打字脚本的方式,但这里有一个替代方案适用于您的两种情况:

function f(x) {   
    return x.toString().toLocaleUpperCase();
}

console.log("hello: "+ f("mr.")); // hello: MR.
console.log("hello: "+ f(0));
 类似资料:
  • 问题内容: 今天,在浏览各种问题时,我遇到了一个问题,在我看来有点不可思议,为什么一个人要在上面加上a ,对于这种情况会不会有什么真正的原因,所以这只是微不足道的吗? 问题答案: 动画图像作为GUI的BG。我使用HTML来调整此尺寸(x3),但是如果它已经是所需的尺寸,则可以直接将其设置为标签的。 不知道它是否是“真正的”。这似乎是一个主观术语,需要更多说明。我从来没有使用过这种方法,只是想通了,

  • 本文向大家介绍什么情况下会出现css阻塞?相关面试题,主要包含被问及什么情况下会出现css阻塞?时的应答技巧和注意事项,需要的朋友参考一下 css阻塞: 将html解析为dom tree 将css解析为cssom tree 将 domtree 与cssom tree 合并生成render tree 浏览器依照render tree开始布局 所以 css阻塞过程在于下载css资源以及解析生成csso

  • 本文向大家介绍什么情况下会出现js阻塞?相关面试题,主要包含被问及什么情况下会出现js阻塞?时的应答技巧和注意事项,需要的朋友参考一下 未在script 使用 async delay 属性且不是body的最后一个标签 ajax 使用了同步

  • 根据Java教程 将包装类型(整数)的对象转换为其相应的基元(int)值称为取消装箱。当包装类的对象为: 作为参数传递给需要相应基元类型的值的方法 分配给相应基元类型的变量 为什么在这种情况下会发生拆箱? 在这种情况下,这些事情发生在哪里?是否有管理数组中元素访问的底层方法?或者[]暗示某种变量?

  • 我正在从事一个Spring项目,该项目实现了一个简单的控制台应用程序,该应用程序必须调用一个外部REST web服务,向其传递一个参数并从中获取响应。 此Web服务的调用是: 其中6是指定的ID。如果在浏览器中(或通过cURL工具)打开此地址,将获得预期的错误消息: 这个错误消息是这个请求的预期响应,我也使用cURL工具正确地获取了它来执行请求。 所以我必须从我的Spring应用程序执行这个GET

  • 问题内容: 我编写了以下代码来实现Singleton模式: 当我编译此文件时,它应该生成Test.class和Test $ TestHolder.class,但它还会生成Test $ 1.class。这没有道理。那么,为什么以及如何呢? 问题答案: 类需要在中调用私有构造函数。但是它是私有的,实际上不能从另一个类中调用。因此,编译器发挥了作用。它 添加了一个仅知道的新的非私有构造函数!_该构造函数