Ziv*_*man 0 javascript variables typescript
我有以下打字稿文件->
module someModule {
declare var servicePort: string;
export class someClass{
constructor(){
servicePort = servicePort || ""; //ERROR= 'ReferenceError: servicePort is not defined'
}
Run Code Online (Sandbox Code Playgroud)
也尝试在“ someClass”内部的功能之一上执行此操作->
someFunction = () => {
if (servicePort && servicePort != '') { //ERROR - also servicePort is not defined
//do something with servicePort
}
}
Run Code Online (Sandbox Code Playgroud)
如果我在js / html文件的某处定义var servicePort,它将可以使用,但是并非我的所有页面都包含servicePort var,因此我想毫无例外地从该变量中安全地获取值。我究竟做错了什么?
有时会定义一个变量,有时却没有定义一个变量,这是一个很大的代码味道,但是如果您确实想执行此操作,则需要使用以下方法来保护对该变量的访问typeof
:
if (typeof servicePort !== "undefined") {
// safe to use servicePort here
}
Run Code Online (Sandbox Code Playgroud)
请注意,您将无法分辨出缺失变量与带有值的变量之间的区别undefined
,但这就是生命。
归档时间: |
|
查看次数: |
811 次 |
最近记录: |