Java教程

JavaScript表达式与操作符

本文主要是介绍JavaScript表达式与操作符,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

文章目录

  • 前言
  • 一、主表达式
  • 二、对象和数组初始化程序
  • 三、属性访问表达式
  • 四、条件式属性访问和条件式函数调用
  • 五、操作符
  • 补充


前言

主要介绍表达式与操纵符中常用的重要知识点


一、主表达式

  1. 主表达式即独立的,最简单的表达式。例如一个变量一个常量都是x, 3.14, y都是。主要包括字面值,关键字和变量引用

二、对象和数组初始化程序

  1. 数组字面量可以通过逗号包含未定义的元素,就是数组元素可以通过逗号不赋值
var arr = [1,,,,3];
  1. 对象与数组的规则相同

三、属性访问表达式

  1. 属性访问表达式访问对象的属性和数组的元素,由两种方式.操作符和[]操作符
  2. []注意:当参数为字符串时访问的是这个属性名为这个字符串的属性["name"],参数不是字符串,为变量时访问的是变量中保存的属性[name],假设name的值为jack,那访问的就是对象中属性名为jack的属性

四、条件式属性访问和条件式函数调用

  1. 怎么防止发生空指针异常,就JavaScript中的属性访问错误TypeError(ES2020新增)

可以加一个’ ? ',例如obj?.name,obj?[name]如果对象为空不会报错,但结果是undefined,函数的调用也可以这么使用,语法一样fun?.()

  1. 使用?.只检查是否为null和undefined,不检查右边的是否存在。左边为空或者未定义。则短路,表达式返回undefined

五、操作符

  1. in,左侧是字符串(或者可以转成字符串),右侧是对象,左侧是右侧的属性名返回true,用in也可以测试是否有某个方法
  2. instanceof操作符与Java一致,但是它是在原型链上找
  3. &&在操作数不是布尔值是真性值或者假性值的时候,在哪里短路就返回哪个值("str" && "s" && null),返回null,因为在null短路
  4. ||&&一样,操作数为真性值或者假性值时,在哪里短路就返回哪个值
  5. ??操作符

a ?? b 等价 (a !== null && a!== undefined)? a : b

  1. delete操作符删除数组元素不会改变数组长度,删除对象属性则是直接删除

补充

  1. 当出现独立的关键字是JavaScript会假设它是全局对象属性去查询它的值,如果没有,报错
  2. 一元操作符会将数据转换成数值类型。+,-,++,--
这篇关于JavaScript表达式与操作符的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!