Skip to content

Instantly share code, notes, and snippets.

@xgqfrms-GitHub
Last active May 15, 2017 05:05
Show Gist options
  • Save xgqfrms-GitHub/654c4f55bf773034a5641b5f9a47aa06 to your computer and use it in GitHub Desktop.
Save xgqfrms-GitHub/654c4f55bf773034a5641b5f9a47aa06 to your computer and use it in GitHub Desktop.
compare-strings-in-javascript

https://stackoverflow.com/questions/2167602/optimum-way-to-compare-strings-in-javascript

https://stackoverflow.com/questions/1179366/is-there-a-javascript-strcmp

 ( str1 < str2 ) ? -1 : ( str1 > str2 ? 1 : 0 );
 

String.prototype.localeCompare()

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare

localeCompare() 方法返回一个数字来指示一个参考字符串是否在排序顺序前面或之后或与给定字符串相同。

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Atomics/compareExchange

Atomics.compareExchange() 静态方法会在数组的值与期望值相等的时候,将给定的替换值替换掉数组上的值,然后返回旧值。 此原子操作保证在写上修改的值之前不会发生其他写操作。

https://www.tutorialspoint.com/javascript/string_localecompare.htm

"string1".localeCompare("string2" )

    "string".localeCompare("");
    // 1
    "string".localeCompare("string");
    // 0
    "string".localeCompare("0");
    // 1
    "string".localeCompare("xyz");
    // -1
    "string".localeCompare("1");
    // 1

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Comparison_Operators

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Equality_comparisons_and_sameness

	
str.equals(str)

http://processingjs.org/reference/String_equals_/

@xgqfrms-GitHub
Copy link
Author

xgqfrms-GitHub commented May 15, 2017

String Trim

String.prototype.trim()

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/Trim

trim() 方法会从一个字符串的两端删除空白字符。
在这个上下文中的空白字符是所有的空白字符 (space, tab, no-break space 等) 以及所有行终止符字符(如 LF,CR)。

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/TrimRight

trimRight() 方法从一个字符串的右端移除空白字符。

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/TrimLeft

trimLeft() 方法从一个字符串的左端移除空白字符。

兼容旧环境

如果 trim() 不存在,可以在所有代码前执行下面代码

if (!String.prototype.trim) {
  String.prototype.trim = function () {
    return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
  };
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment