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

有哪些网站做任务有佣金制作公司网页哪个公司好

有哪些网站做任务有佣金,制作公司网页哪个公司好,怎么加入电商平台卖货,商标自助查询系统官网js中! 、 !. 、!、?.、.?、??、??的用法及使用场景 !!!?.??????、?? 区别 !. (ts)注意 ! (非空断言符号) 用于取反一个布尔值或将一个值转换为布尔类型并取反 const a true; const b false; const value !a; // false const value !…

js中! 、 !. 、!、?.、.?、??、??=的用法及使用场景

  • !
  • !!
  • ?.
  • ??
  • ??=
    • ??、??= 区别
  • !. (ts)
  • 注意

!

  • (非空断言符号)

用于取反一个布尔值或将一个值转换为布尔类型并取反

const a= true; 
const b= false; const value = !a; // 'false'
const value =  !b; // 'true'

!!

  • (强制类型转换)

用于将一个值转换为对应的布尔值(强制类型转换)

const a= "Hello";
const value = !!a; //  'true',任何非空字符串在布尔上下文中都是真值

?.

  • (可选链操作符)

在访问对象属性或调用函数时,检查中间的属性是否存在或为 null/undefined。如果中间的属性不存在或为空,表达式将短路返回 undefined,而不会引发错误

const obj = {a: {b: {c: 42}},m: [],n: function () {return "Hello, world!";}
};// 传统写法 --需要手动检查每个属性
const value1 = obj && obj.a&& obj.a.b&& obj.a.b.c; 
const value2 = obj && obj.m&& obj.m[0] && obj.n[0].fn && obj.n[0].fn();
const value3 = obj && obj.n && obj.n();// 使用可选链操作符  --如果任何中间属性不存在或为空,value 将为 undefined// 对属性的检查
const value1 = obj?.a?.b?.x;//对数组下标的检查  ?. => ?.[] 
const value2 = obj?.m?.[2]; //对函数的检查  ?. => ?.()
const value3 = obj?.n?.(); 

??

  • (空值合并操作符 )

用于选择性地提供默认值,仅当变量的值为 null 或 undefined 时,才返回提供的默认值。否则,它将返回变量的实际值

const a= null;
const b= undefined;
const c= 0;
const d= '';
const e= false;//传统写法,除了null,undefined, 无法兼容0、''、false的情况,使用时要特别小心
const value1 = a || 'default'; // 'default'
const value2 = b || 'default'; // 'default'
const value3 = c || 'default'; // 'default',因为 0 转布尔类型是 false
const value4 = d || 'default'; // 'default',因为 '' 转布尔类型是 false
const value5 = e || 'default'; // 'default'const value1 = a ?? 'default'; // 'default',因为 a 是 null
const value2 = b ?? 'default'; // 'default',因为 b 是 undefined
const value3 = c ?? 'default'; // 0,因为 c 不是 null 或 undefined
const value4 = d ?? 'default'; // false,因为 d 不是 null 或 undefined

??=

  • (空值合并赋值操作符)

结合了空值合并操作符和赋值操作符。它用于将默认值分配给变量,仅当变量的值为 null 或 undefined 时

let a= null;
let b= undefined;
let c= 0;a ??= 'default'; // 'default',因为 a 是 null
b ??= 'default'; // 'default',因为 b 是 undefined
c ??= 'default'; // 0,因为 c的初始值不是 null 或 undefined

??、??= 区别

  • 是否是复制操作
含义
??在??左边是null或者undefined的时候,返回右边的结果
??=当左边是null或者undefined的时候,赋值右边的结果。

!. (ts)

  • (非空断言操作符符)

在访问对象属性或调用函数时,检查中间的属性是否不存在或不是 null/undefined,表示确定某个标识符是有值的。

function a(value?:string){console.log(value!.length);// console.log(value.length); //错误提醒:value is possibly 'undefined'.} 
a('b')// 注意: !.不传值, 编译JS后会报错, 建议使用?. 替代 !.

注意

  • !. 、 ?.、??、??= 是在 ECMAScript 2020 标准中引入的,因此在旧版本的 JavaScript 中可能不被支持
http://www.yayakq.cn/news/678021/

相关文章:

  • 北京新鸿儒做的网站如何介绍网站模板下载
  • 网站建设介绍推广用语成都十大广告公司
  • 西宁建网站需要多少钱做返利网站怎麼
  • 建设银行手机短信网站怎么开通网站源码上传教程
  • 威海做网站的佛山网站代运营
  • 三优科技 网站开发wordpress菜单相对地址
  • 网站运营思路wordpress设计页面教程
  • 重庆网站建设jccit专业建设专题网站
  • 做网站的像素百度站长工具seo
  • 网络科技公司网站建设策划一浪网站建设
  • 网络科技建设网站二级网站建设标准
  • 深圳 网站建设培训班商务网站开发考题
  • 英语网站online网站后台数据改不了
  • 酒店网站建设方案结束语做申诉资料网站
  • 网站 公司 备案大同网站建设制作哪家好
  • 珠海品牌机械网站建设购物网站建设的可行性
  • 网站怎么做实名认证成都建工官网
  • 网站建设讯美湖南门户网站建设
  • 网站设计师简历广州卓天跨境电商网站
  • 锦州网站建设品牌网上政务服务平台入口
  • 360网站建设商家北京网站建设课程培训班
  • 福田网站建设哪家好搜外seo视频 网络营销免费视频课程
  • 织梦做手机网站网站后台标签切换
  • 建设网站需要几个文件夹用电脑怎么做原创视频网站
  • 五大电商平台都有哪些成都关键词优化服务
  • 哪里有创建网站的51zwd一起做网站广州
  • 网站怎样做关键词优化帝国视频网站模板
  • 哪里有免费的网站模板word+没有安装wordpress
  • 自己 做网站学什么 平面设计如何做招生网站
  • 广州市口碑好的网站制作排名熊猫办公ppt模板下载免费