原因是什么?运算符或使用字符串
What is the cause? operators or use of strings?
为什么 javascript 中的字符串会发生这种情况?
3<=255
true
但
'3'<='255'
false
这与运算符还是字符串的使用有关?
我想这是因为它比较了字符的 ascii 值,并且 3 的 ascii 值大于 2。在字符串中,如果 1 个字符为假,则逐个字符比较字符,则不会比较其他字符
在第一种情况下,您正在比较 2 个数字,在第二种情况下,您正在比较 2 个字符串。因此,它们是不同的类型,因此会产生不同的结果。
两者兼而有之。
对数字进行比较时,数字的值决定了结果。
对字符串进行比较时,字符串的排序顺序决定了结果。
字符串'255'
被认为小于字符串'3'
,因为它在排序列表中排在它之前。
相关文章:
- Javascript逻辑运算符和字符串/数字
- 三元运算符检查多个字符串
- 用javascript中的三元运算符连接字符串
- 字符串为零的JavaScript比较运算符
- AngularJS/Javascript:使用运算符对字符串进行排序
- 为什么下面的“in”运算符找不到这个数组中的字符串
- 包含空字符串的 HTML 属性不显示 = 运算符
- Javascript中是否有字符串增量运算符
- 如果包含以下任何逗号运算符,则拆分字符串,例如“==”、“>”、“<”、“>=”、“<==”、“!=”
- 正则表达式 - 替换方法从字符串中删除运算符产生不希望的结果
- JavaScript三元运算符,用于计算字符串中的字符数
- 分析字符串并确定 SQL 运算符
- 如果我在字符串上使用两个否定运算符,我是否使用类型强制
- 应用于表示负十六进制的字符串的 JS 一元加运算符的行为
- 字符串值函数上的 Javascript typeof 运算符返回“函数”而不是“字符串”
- 原因是什么?运算符或使用字符串
- 在运算符中更正两个或多个字符串的 JavaScript 语法
- 仅当字符串后面没有左方括号或点运算符,即“0”时才替换字符串;[“或”;
- 用于字符串参数的Javascript*和*运算符
- 使用“”对字符串进行排序;小于/大于“;比较器中的比较运算符