【JavaScript】关系运算符--非数值类型、Unicode编码表
1、关系运算符--非数值类型
对于非数值进行比较时,会将其转换为数字然后再比较。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script>var ch1 = 1 > '0';var ch2 = 2 > true;var ch3 = 0 > false;console.log("ch1=" + ch1);console.log("ch2=" + ch2);console.log("ch3=" + ch3);</script>
</head><body></body></html>
结果:
注意:任何值和NaN作比较都是false.
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script>document.writeln(10 > 'haa');</script>
</head><body></body></html>
结果:
注意:如果关系运算符的两侧的值都是字符串时,不会将其转换为数字进行比较,而会分别比较字符串中字符的Unicode编码。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script>var ch1 = "1" < "5";var ch2 = 11 > "5";var ch3 = "11" > "5";var ch4 = "a" < "b";document.writeln("ch1=" + ch1);document.writeln("<br>");document.writeln("ch2=" + ch2);document.writeln("<br>");document.writeln("ch3=" + ch3);document.writeln("<br>");document.writeln("ch4=" + ch4);</script>
</head><body></body></html>
结果:
比较字符编码时是一位一位进行比较,如果两位一样,则比较下一位,所以可以借助这一特性来对英文进行排序
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script>var ch1 = "abc" < "b";var ch2 = "bbc" < "b";document.writeln("ch1=" + ch1);document.writeln("<br>");document.writeln("ch2=" + ch2);</script>
</head><body></body></html>
结果:
如果比较的两个字符串型的数字,可能会得到不可预期的结果,注意:在比较两个字符串型的数字时,一定一定一定要转型。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script>document.writeln("11111" < +"5");//+"5"会转换为整型:5</script>
</head><body></body></html>
结果:
2、Unicode编码表
unicode编码表网站:Unicode 符号表 - 所有 Unicode 字符及其代码都在一页上 (◕‿◕) SYMBLhttps://symbl.cc/cn/unicode-table/
在字符串中使用转义字符输入Unicode编码方法:“\u四位编码”,u指的是unicode编码,四位编码指的是unicode编码的十六进制表示
示例:
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><script>document.writeln("\u2620");</script>
</head><body></body></html>
结果:
在网页中使用Unicode编码: &#编码; 这里的编码是十进制
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><!-- 十六进制2620对应的十进制为: 16*2+6*16*16+2*16*16*16==9760--><h1>☠</h1>
</body></html>
结果: