JavaScript 变量/字符串函数?

标签 javascript string function

我正在练习代码可读性并“美化”我的代码,所以我想学习如何实现它。

我见过其他代码执行此操作,但我不记得它们是哪个或如何执行的。

我想创建自己的 .string 函数,如下所示:

var rmbrackets = new function() {
  return String.replace(/\[.*?\]/g, "");
}
console.log("this is a [test]test!".rmbrackets);

我希望上面的内容记录“这是一个测试!”。 上面只是一个例子,我想用许多其他函数来实现这一点。

我该怎么做?

最佳答案

尝试

String.prototype.rmbrackets = function() {
  return this.replace(/\[.*?\]/g, "");
};

这会添加到对象字符串的原型(prototype)。

此外,您需要添加 () 才能实际执行它,因此完整的代码为

String.prototype.rmbrackets = function() {
  return this.replace(/\(.*?\)/g, "");
};
console.log("this is a (test)test!".rmbrackets());

在此示例中,我编辑了您的正则表达式以匹配您想要实现的目标。

Demo


如果您同意Matt Greer的观点,那么您可以为此创建一个函数:

function rmbrackets(text)
{
  return text.replace(/\(.*?\)/g, "");
};
console.log(rmbrackets("this is a (test)test!"));

因为如果每个人都这样做,内置原型(prototype)很快就会受到污染。人们经常会互相踩踏。还有一个问题是,如果浏览器本身添加了 rmbrackets,您可能会隐藏它。其他问题包括 for in 循环中出现意外的属性等。总的来说,JS 社区已经同意不使用内置原型(prototype)。

Demo

关于JavaScript 变量/字符串函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21801137/

相关文章:

Python3,当 UserString 不表现为字符串时?

php - 使用 MySql Update 和 PHP 制作表情符号

mysql - 从垃圾箱中删除帖子,为其添加自定义字段

Javascript 类似 oop 的失败(?!?)

python - 如何在 MySQL 中匹配列

string - awk åäö 变音字符的长度为 2

javascript - 函数变量赋值结束时没有 ()

javascript - Angular Tap 已弃用

javascript - 如何在单击时结束 jquery 函数

javascript - 如何通过具有数组行的第一项的值来删除/删除javascript数组中的一行?