一、算术运算符
- +:对数字运行进行加法运行或对字符串进行连接运行;如果运行符是一个对象,则会先调用对象的valueof()或toString()方法。
- -:减法操作,如果其中有非数字操作数,则会先转换成数字
- *:乘法操作,转换同上
- /:除法操作,转换同上。JavaScript中所有的数字都是浮点型,因些除不尽时,结果总返回浮点型
- %:模运算,转换同上。
- -:一元减,执行取反操作,类似于-1*a。转换同上。
- +:一元加操作,无意义。转换同上。
- ++:递增运算符,转换同上。
- --:递减操作,转换同上
二、相等运算符
JavaScript中有两个用于比较相等性的运算符:==(相等运行符)和===(等同运算符)。
- 判断是否等同
- 如果两个值类型不同,则不相同
- 如果两个数字值相同,且均不为NaN,则等同
- 如果两个字符串内容完全相同,则等同。
- 如果两个值均为true或false,则等同
- 如果两个值引用的是同一对象、数组或函数,则等同
- 如果两个值均为null或undefined,则等同判断是否相等
- 判断相等
- 如果两个值类型相同,则相当于等同性
- 如果类型不同:
- 如果一个值为null,另一个为undefined,则相同
- 如果一个值为数字,另一个为字符串,则字符串转成数字后比较值
- 如果一个值为true,则转为1;值为false则转成0,再比较
- 如果一个值为对象,另一个为数字或字符串,则对象转换成原始类型再比较。JavaScript内部先使用valueOf()进行转换,再尝试toString(),但对于Date类,则先执行toString()。不属于javascript核心类型 的对象,则可以采用JavaScript实现定义的方式把自身转换成原始数值
- 其他数值组合是不相等的。
三、in运算符
in运算符要求其左边的运算数是一个字符串,或可以被转换成字符串,右边的运算数是一个对象或数组。如果该运算符左边的值是右边对象的一个属性名,则返回true,例如:
var point= {x:1, y:1}; //Define an object
var has_x_coord = "x" in point; //eveluates to true
var has_y_coord = "y" in point; //eveluates to true
var has_z_coord = "z" in point; //evaluates to false
var ts = "toString" in point; //inherited property; evaluates to true
四、typeof运算符
typeof一元运算符放在一个运算数之前,如果运算数是数字、字符串或布尔值,则返回"number"、"string"或"boolean";对对象、数组或null,返回"object";对函数返回"function";对未定义返回"undefined"。
五、delete运算符
delete是一个一元操作符,它将删除运算符所指定的对象的属性、数组元素或变量。如果删除成功,返回true,否则返回false。
并非所有的属性和变量都可以被删除,某些核心的属性和客户端属性不可被删除;用var语句声明的变量也不能被删除。
如果delete使用的运算数是一个不存在的属性,则返回true(令人吃惊的是,ECMAScript标准规定,当delete运算的运算数不是属性、数组元素或变量时,也返回true)。
例如:
var o = {x:1,y:2};
delete o.x; //true
typeof o.x; //undefined
delete o.x; //true
delete o; //false
注:delete所能影响的只是属性值,不能影响属性引用的对象:
var my = new Object();
my.hire = new Date();
my.fire = my.hire;
delete my.hire; //true
document.write(my.fire); //my.fire still refers to the Date Object
六、void运算符
void是一个一元运算符,它可以出现在任何类型的操作数之前。这个运算符的用途比较特殊,它总是舍弃运算数的值,然后返回undefined。
分享到:
相关推荐
正则表达式中的字符匹配攻略是指使用特殊的字符或符号来匹配字符串中的特定模式。例如,`.`字符可以匹配任何单个字符,而`[abc]`字符组可以匹配任何一个在方括号中的字符。 横向模糊匹配 横向模糊匹配是指使用特殊...
第3章讨论了正则表达式中括号的作用,包括分组、分支结构、分组引用和反向引用等。分组可以通过括号“()”实现,用来提取匹配的数据,分支结构则用来匹配多个选项之一。分组引用可以引用之前已经匹配的分组,反向...
javascript正则表达式详解 (chm)
了解正则表达式概念 掌握正则表达式的语法 熟练掌握正则表达式在JavaScript中的应用
非打印字符在正则表达式中也有特殊的用途,例如: - `\cx`:匹配控制字符x,其中x是a-z或A-Z中的一个字母。例如,`\cM`匹配Control-M或回车符。 #### 七、正则表达式示例 下面通过几个例子来具体说明正则表达式的...
JavaScript中的正则表达式是一种强大的文本处理工具,用于在字符串中执行模式匹配和搜索操作。它们在数据验证、文本替换和提取子字符串等任务中扮演着核心角色。 首先,正则表达式允许我们测试字符串是否符合特定...
JavaScript正则表达式是编程语言中的一个重要组成部分,用于处理文本模式匹配和字符串操作。这篇博客“javascript正则表达式综合练习”可能是一个实践教程或示例集合,旨在帮助开发者提升在JavaScript中使用正则...
JavaScript中的正则表达式(Regular Expression)是一种强大的文本处理工具,用于匹配、查找、替换以及提取字符串中的模式。在Web开发中,它被广泛应用于数据验证、文本搜索和替换等场景。这篇学习笔记将深入探讨...
JavaScript中的正则表达式是进行文本处理和数据验证的强大工具,它允许我们通过模式匹配来查找、替换或分割字符串。本文将深入探讨JavaScript正则表达式的最新特性、语法以及常见用法。 一、正则表达式基础 1.1 ...
在JavaScript中,正则表达式通常与`RegExp`对象一起使用。例如: ```javascript var pattern = /pattern/; var str = "Some string"; var match = str.match(pattern); ``` `RegExp`对象的构造函数可以接受两个...
在正则表达式中,直接量字符模式是指任意字符,除了 ^ $ . * + ? = ! : | \ / () [] {} 以外的字符。这些字符可以代表自身,而其他字符需要使用 \ 转义前缀。 字符类模式 字符类模式是指在方括号内的任何一个字符...
JavaScript中的正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配和搜索替换。以下是一些常见的JavaScript正则表达式及其应用: 1. **匹配中文字符**:`[\u4e00-\u9fa5]` 这个正则表达式用于匹配...
JavaScript中的正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配、搜索、替换等操作。在JavaScript中,正则表达式被广泛应用于数据验证、文本处理和字符串操作等方面。 1. **正则表达式概念** - ...
`, `{`, `}`, `[`, `]`, `\`, `|`, `(`, `)`, `^`, `$`在正则表达式中具有特殊含义,若要匹配这些字符本身,需使用反斜杠`\`进行转义。 5. **预查和后顾反向断言** - **预查**:`(?=pattern)`,只匹配后面跟着指定...
JavaScript中使用正则表达式的一些验证
JavaScript正则表达式是编程语言JavaScript中的一个重要组成部分,它用于处理文本字符串,进行模式匹配、查找、替换等操作。在JavaScript中,正则表达式是一种强大的工具,可以帮助开发者实现复杂的数据验证、文本...
例如,在上面的正则表达式中: * `^`表示字符串的开始 * `(\d{1,3}|\*)`表示匹配1到3个数字或星号 * `\.`表示匹配点号 * `$`表示字符串的结束 * `g`表示全局匹配 三、javascript正则表达式模糊匹配IP地址的实现...
正则表达式(Regular Expression)是JavaScript中的一种强大工具,用于匹配字符串中的模式。在JavaScript中,正则表达式可以用来验证用户输入,例如检查邮箱地址的有效性或手机号码的格式。以下是一些JavaScript中...