一元操作符
delete
删除一个对象(an object)或一个对象的属性(an object's property)或者一个数组中某一个键值(an element at a specified index in an array)。语法如下:
delete objectName;
delete objectName.property;
delete objectName[index];
delete property; // legal only within a with statement
typeof
typeof 操作符返回一个表示 operand 类型的字符串值。operand 可为字符串、变量、关键词或对象,其类型将被返回。operand 两侧的括号为可选。
typeof operand
typeof (operand)
void
void运算符,表明一个运算没有返回值。expression是javaScript表达式,括号中的表达式是一个可选项,当然使用该方式是一种好的形式。
void (expression)
void expression
关系操作符
关系操作符对操作数进行比较,根据比较结果相等与否,返回相应的布尔值。
in
如果指定的属性(property)在指定的对象(object)中会返回true,语法如下:
propNameOrNumber in objectName
propNameOrNumber在这里可以是一个代表着属性名的字符串或者是一个代表着数组索引的数值表达式,而objectName则是一个对象名。
instanceof
如果对象是某种指定类型(object type)返回true.语法如下:
objectName instanceof objectType
表达式
表达式 是一组可以计算出一个数值的有效的代码的集合。
左值表达式
左值可以作为赋值的目标。
- new
你可以使用new operator 创建一个自定义类型或者是预置类型的对象实例。用法如下:
var objectName = new objectType([param1, param2, ..., paramN]);
- super
关键字可以用来调用一个对象父类的函数,它在用来调用一个类的父类的构造函数时非常有用,比如:
super([arguments]);
- Spread(扩展语法)
允许一个表达式在期望多个参数(用于函数调用)或多个元素(用于数组字面量)或多个变量(用于解构赋值)的位置扩展。
myFunction(...iterableObj);
例:
var parts = ['shoulder', 'knees'];
var lyrics = ['head', ...parts, 'and', 'toes']; //'head', 'shoulder', 'knees', 'and', 'toes'