javascript - 我应该如何编写 jQuery 插件以像 String.myPlugin() 而不是 Selector.myPlugin() 一样使用它?

标签 javascript jquery string jquery-plugins arguments

我最近一直在使用 jQuery,现在我需要一个字符串函数,我想像这样执行它:

var str = "mystring";
if( str.myPlugin( ) )
{

}

但是我发现的 jquery 插件的所有示例都只能像 $(selector).myPlugin(); 这样使用;如果我将它们应用于字符串,我会得到“...不是一个函数” ”。

我该怎么做?

最佳答案

当您创建字符串时,您真正创建的是 String 对象的新实例。

var str = new String("mystring");

您可以使用对象的原型(prototype)向该对象的所有实例添加方法。

String.prototype.myPlugin = function(){
  alert("worky!");
}

var str = "mystring";
str.myPlugin();

由于可能的名称冲突,向 native 对象(例如 String 对象)添加新方法通常会受到反对。

编辑:只是为了添加说明。

这不是 jQuery 的方法,创建此类方法不需要 jQuery。

关于javascript - 我应该如何编写 jQuery 插件以像 String.myPlugin() 而不是 Selector.myPlugin() 一样使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7823815/

相关文章:

javascript - 如何将 CSS/HTML 添加到 Ajax 调用

jquery - 我尝试在 Dreamweaver CS5 中使用 jquery 执行加载功能,但它不起作用

javascript - 用javascript定义一个长字符串

c++ - 如何在 C++ 中轻松管理 Unicode 字符串

python - 将字符串写入文件的最后一行,Python

python - 从字符串中读取参数值

javascript - 在 AngularJS 中将 JSON 对象保存为文件

javascript - Node.JS,我的密码在 RAM 中安全吗?

javascript - 覆盖框出现在屏幕中央

javascript - JavaScript 中检测字符串是否不是 URL?