当前位置: 首页 > wzjs >正文

如何建立一个网站要多少钱广州 骏域网站建设

如何建立一个网站要多少钱,广州 骏域网站建设,wordpress拉黑用户,地税城市维护建设税网站是什么一、介绍 合并空值运算符与null和undefined相似,可以理解为当一个值既不是null或undefined时,我们将其称为’已定义的defined’。 a ?? b的结果是: ● 如果a是已定义的,那么结果就是a, ● 如果a不是已定义的,那么结…

一、介绍

合并空值运算符与null和undefined相似,可以理解为当一个值既不是null或undefined时,我们将其称为’已定义的defined’。

a ?? b的结果是:
● 如果a是已定义的,那么结果就是a,
● 如果a不是已定义的,那么结果就是b

如果第一个参数不是null或undefined,那么??返回第一个参数。否则返回第二个参数。
例如,我们用已知的三目运算符来执行一下:

result =(a!==null && a!==undefined) ?a:b //那么就可以简写成 a??b 来判断a是否是一个未定义的值

使用场景:
在这里,如果 user 的值不为 null/undefined 则显示 user,否则显示 匿名:

let user;
alert(user ?? "匿名"); //'匿名'

在下面这个例子中,我们将一个名字赋值给了 user:

let user = '张三'
alert(user ?? "匿名"); //张三

我们还可以从一系列的值中选择出第一个已定义的值(非 null/undefined 的值)。

let firstName = null;
let lastName = null;
let nickName = "张三"
//显示第一个已定义的值
alert(firstName ?? lastName ?? nickName ?? "匿名" ) //张三

二、与 || 比较

或运算符 || 可以以与 ?? 运算符相同的方式使用。

let firstName = null;
let lastName = null;
let nickName = "张三"
//显示第一个已定义的值
alert(firstName || lastName || nickName || "匿名" ) //张三

区别:
| | :返回第一个 真 值
? ? :返回第一个 已定义的 值

|| 无法区分 false、0、空字符串 “” 和 null/undefined。它们都一样 —— 假值(falsy values)。如果其中任何一个是 || 的第一个参数,那么我们将得到第二个参数作为结果。
不过在实际中,我们可能只想在变量的值为 null/undefined 时使用默认值。也就是说,当该值确实未知或未被设置时。

let height = 0;
alert(height || 100); // 100
alert(height ?? 100); // 0
  1. height || 100 首先检查是否是一个假值,height为0,是假值,所以||运算符返回的是100、
  2. height ?? 100首先检查height是否为null/undefined,height为0,不是null/undefined,所以结果为height的原始值0

小节:实际上,高度 0 通常是一个有效值,它不应该被替换为默认值。所以 ?? 运算得到的是正确的结果。

三、优先级

?? 运算符的优先级与 || 相同,它们的优先级都为 3,详见:MDN。
这意味着,就像 || 一样,空值合并运算符在 = 和 ? 运算前计算,但在大多数其他运算(例如 + 和 *)之后计算。
// 所以我们可能需要在这样的表达式中添加括号:

let height = null;
let width = null;// 重要:使用括号
let area = (height ?? 100) * (width ?? 50);alert(area); // 5000

否则,如果我们省略了括号,则由于 * 的优先级比 ?? 高,它会先执行,进而导致错误的结果。\

// 没有括号
let area = height ?? 100 * width ?? 50;// ……将这样计算(不符合我们的期望):
let area = height ?? (100 * width) ?? 50;

?? 与 && 或 || 一起使用
出于安全原因,JavaScript 禁止将 ?? 运算符与 && 和 || 运算符一起使用,除非使用括号明确指定了优先级。

//会触发错误
let x = 1 && 2 ?? 3; // Syntax error

这个限制无疑是值得商榷的,它被添加到语言规范中是为了避免人们从 || 切换到 ?? 时的编程错误。
可以明确地使用括号来解决这个问题:

let x = (1 && 2) ?? 3; // 正常工作了
alert(x); // 2

四、总结

  1. 合并空值运算符提供一种从列表中选择第一个"已定义"的值的简便方式,用于为变量分配默认值。
  2. ?? 运算符的优先级非常低,仅略高于 ? 和 =,因此在表达式中使用它时请考虑添加括号。
  3. 如果没有明确添加括号,不能将其与 || 或 && 一起使用。
http://www.dtcms.com/wzjs/586434.html

相关文章:

  • 房产经济人怎么做网站wordpress多人聊天室
  • 旅游网站建设要求安阳网站设计多少钱
  • 网站开发常用中间件网站建设要在哪学
  • 湛江自助建站软件建设部网站企业资质
  • 营销型网站有那些网站重庆学校网站推广
  • 响应式网站开发demo如何做搞笑原创视频网站
  • 有关宠物方面的网站建设方案连云港企业网站制作
  • 重庆建设行业信息网站my63777免费域名查询2024年
  • 短视频网站的动画是怎么做的宁波住房和建设局网站首页
  • 西安建设工程信息网站加网络网站建设工作室
  • 百度站长网站验证网络营销推广一本书
  • 郑州网站推广公司价格电子产品开发流程图
  • 百度商桥怎么嵌入网站购买游戏软件做网站
  • 百度怎么做自己网站网站优化怎么做ppt
  • 网站制作建站程序公司网站建设北京
  • 宁夏建设主管部门网站无备案网站可以做百度推广
  • 中国城乡与建设部网站wordpress friday
  • 韩国网站never官网网站设置301跳转
  • 北京建设银行支行查询官方网站wordpress黑色名片主题
  • 呼和浩特商城网站建设wordpress重新加载
  • 河南网站优化公司长沙百度文化传播有限公司
  • 网站发布系统深圳外贸网站建设
  • 凡科建站和wordpress杭州网站优化多少钱
  • 网站制作 南通蓝色phpcms律师网站模板phpcms律师
  • 网站建设公司项目介绍wordpress镜像是什么
  • 微信公众号做电影网站网站后台管理图片水印怎么做
  • 网站上做播放器流量算谁的广告设计专业学什么
  • 招商加盟网站建设目的许昌住房和城乡建设局网站
  • wp做网站难吗搭建网站的六个基本步骤流程
  • 科研院所网站建设湘潭做网站出色磐石网络