• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

请帮解释一句代码。谢谢

今天在学习openlayers时看到这样一句代码
其中 !== undefined ? 是原生JS写法吗? 有点看不懂
103003ybe5h532ht5toest.jpg

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与4

这个是三元操作符,格式为:变量=条件?值1:值2。执行过程是这样的:如果条件为真,则将值1赋值给变量;反之,将值2赋值给变量。例如:var txt = 5>2 ? "hello" : "javascript"; 显然5>2为真,所以这时txt = "hello"
var zoomInTipLabel = options.zoomInTipLabel !== undefined ?options.zoomInTipLabel : 'zoom in';的意思是:如果options.zoomInTipLabel不恒等于undefined,那么就将options.zoomInTipLabel赋值给变量zoomInTipLabel;反之,将'zoom in'赋值给变量zoomInTipLabel。

使用道具 举报

这个三目运算符,就相当于if(){}else{};?前面的是判断条件,后面就是要执行的代码

使用道具 举报

!== undefined
如果这句话为true的话,就说明,options里面的zoomInTipLabel属性未定义,也就是还不包含这个属性。
!==与undefined比较不是说等不等于的问题,因为它和===全等()一样,它很关心左右两边的值得类型是否一致,如果我现在左边options.zoomInTipLabel = 'undefined',options.zoomInTipLabel !==undefined 也是返回true,说明他们不全等,undefined说明变量没有声明 或者声明了没有初始化。属性定义的时候是必须要赋予一个初值的,所以它只有可能是尚未定义。


如果你感觉答案有帮助,请采纳一下

使用道具 举报

这是一个三元表达式吧,给表里zoomInTipLabel赋值,如果options.zoomInTipLabel 不等于 undefined,那么就执行接下来的语句,如果 等于 就执行:后面的语句。
?前是一个判断方式,如果为真就接着执行,如果不为真就执行:后的语句。
if(options.zoomInTipLabel!==undefined){options.zoomInTipLabel;}else{Zoomin;//}

使用道具 举报

发新帖

发布任务需求已有1031166位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!