松江新城网站建设,广园路建设公司网站,百度云平台建设网站,google ajax wordpressJavaScript高级程序设计(第4版)读书分享笔记记录 适用于刚入门前端的同志 目录 操作符
一元操作符
递增/递减操作符 一元加和减
布尔操作符 逻辑非
逻辑与 逻辑或
乘性操作符
乘法操作符
除法操作符
取模操作符
加性操作符
加法操作符
减法操作符
关系操作符 相等操… JavaScript高级程序设计(第4版)读书分享笔记记录 适用于刚入门前端的同志 目录 操作符
一元操作符
递增/递减操作符 一元加和减
布尔操作符 逻辑非
逻辑与 逻辑或
乘性操作符
乘法操作符
除法操作符
取模操作符
加性操作符
加法操作符
减法操作符
关系操作符 相等操作符
等于和不等于 全等和不全等
条件操作符
赋值操作符
逗号操作符 操作符 可用于操作数据值的操作符包括数学操作符如加、减、位操作符、关系操作符和相等操作符等。ECMAScript 中的操作符是独特的因为它们可用于各种值包括字符串、数值、布尔值甚至还有对象。一元操作符 只操作一个值的操作符叫一元操作符unary operator 递增/递减操作符 有两个版本前缀版和后缀版。顾名思义前缀版就是位于要操作的变量前头后缀版就是位于要操作的变量后头。 //前缀递增操作符
let age 24
age; //同等于 age age 1;//前缀递减操作符
let age 29;
--age; //同等于 age age - 1;//后缀递增操作符
let age 24
age;//后缀递减操作符
let age 29;
age--; 前缀递增和递减在语句中的优先级是相等的因此会从左到右依次求值。 let num1 2;
let num2 20;
let num3 --num1 num2;
let num4 num1 num2;
console.log(num3); // 21
console.log(num4); // 21 是因为加法使用的也是递减后的值。 后缀版递增和递减在语句被求值后才发生 let num1 2;
let num2 20;
let num3 num1-- num2;
let num4 num1 num2;
console.log(num3); // 22
console.log(num4); // 21 一元加和减 一元加由一个加号表示放在变量前头对数值没有任何影响 let num 25;
num num;
console.log(num); // 25 一元减由一个减号-表示放在变量前头主要用于把数值变成负值 let num 25;
num -num;
console.log(num); // -25 如果将一元加应用到非数值则会执行与使用 Number()转型函数一样的类型转换布尔值 false和 true 转换为 0 和 1字符串根据特殊规则进行解析对象会调用它们的 valueOf()和/或toString()方法以得到可以转换的值。 布尔操作符 逻辑非 逻辑非操作符由一个叹号!表示可应用给 ECMAScript 中的任何值。这个操作符始终返回布尔值无论应用到的是什么数据类型。逻辑非操作符首先将操作数转换为布尔值然后再对其取反。 如果操作数是对象则返回 false。 如果操作数是空字符串则返回 true。 如果操作数是非空字符串则返回 false。 如果操作数是数值 0则返回 true。 如果操作数是非 0 数值包括 Infinity则返回 false。 如果操作数是 null则返回 true。 如果操作数是 NaN则返回 true。 如果操作数是 undefined则返回 true。console.log(!false); // true
console.log(!blue); // false
console.log(!0); // true
console.log(!NaN); // true
console.log(!); // true
console.log(!12345); // false 逻辑与 逻辑与操作符由两个和号表示应用到两个值 let result true false; 逻辑或 逻辑或操作符由两个管道符||表示 let result true || false; 利用这个行为可以避免给变量赋值 null 或 undefined。 let myObject preferredObject || backupObject;
//如果 preferredObject 不是 null则它的值就会赋给myObject如果 preferredObject 是 null则backupObject 的值就会赋给 myObject。 乘性操作符 乘法操作符 乘法操作符由一个星号*表示可以用于计算两个数值的乘积 let result 34 * 56; 除法操作符 除法操作符由一个斜杠/表示用于计算第一个操作数除以第二个操作数的商 let result 66 / 11; 取模操作符 取模余数操作符由一个百分比符号%表示 let result 26 % 5; // 等于 1 加性操作符 加法操作符 let result 1 2; 如果两个操作数都是字符串则将第二个字符串拼接到第一个字符串后面 如果只有一个操作数是字符串则将另一个操作数转换为字符串再将两个字符串拼接在一起 let result hello 你好
let result2 5 5; // 一个数值和一个字符串
console.log(result); // hello你好
console.log(result2); // 55 减法操作符 let result 2 - 1; 关系操作符 关系操作符执行比较两个值的操作包括小于、大于、小于等于和大于等于用法跟数学课上学的一样。 相等操作符 等于和不等于 等于操作符用两个等于号表示如果操作数相等则会返回 true。 不等于 操作符用叹号和等于号!表示如果两个操作数不相等则会返回 true。 全等和不全等 全等操作符由 3 个等于号表示只有两个操作数在不转换的前提下相等才返回 true。 let result1 (55 55); // true转换后相等
let result2 (55 55); // false不相等因为数据类型不同 不全等操作符用一个叹号和两个等于号!表示只有两个操作数在不转换的前提下不相等才 返回 true。 let result1 (55 ! 55); // false转换后相等
let result2 (55 ! 55); // true不相等因为数据类型不同 条件操作符 语法 variable boolean_expression ? true_value : false_value; 如果 boolean_expression 是 true 则赋值 true_value 如果boolean_expression 是 false则赋值 false_value 赋值操作符 乘后赋值* 除后赋值/ 取模后赋值% 加后赋值 减后赋值- 左移后赋值 右移后赋值 无符号右移后赋值案例 let num 10;
num num 10;
//以上代码的第二行可以通过复合赋值来完成
let num 10;
num 10; 逗号操作符 逗号操作符可以用来在一条语句中执行多个操作如下所示 let num1 1, num2 2, num3 3; 在赋值时使用逗号操作符分隔值最终会返回表达式中最后一个值 let num (5, 1, 4, 8, 0); // num 的值为 0