JavaScript中{0}的含义是什么?

q09*_*987 1 javascript jquery jquery-validate

这个答案的代码中:

$.validator.addMethod('lessThanEqual', function(value, element, param) {
    return this.optional(element) || parseInt(value) <= parseInt($(param).val());
}, "The value {0} must be less than {1}");
Run Code Online (Sandbox Code Playgroud)

是什么意思{0}{1}?Javascript中定义那些参数替换的经验法则是什么?

所以根据评论,我想进一步询问,以便在这里传递{0}和{1}.

我必须使用什么语法来验证函数lessThanEqual.

谢谢

Nic*_*ver 7

没有"特殊"含义,它们只是在显示消息时验证器插件替换的标记,在数字上指的是规则的参数.

具体来说,这是在插件中发生的:

message = jQuery.format(message.replace(theregex, '{$1}'), rule.parameters);
Run Code Online (Sandbox Code Playgroud)

所以{0}指第一个参数,{1}第二个参数等等.这是jQuery.validate 1.7中的格式函数:

$.validator.format = function(source, params) {
  if ( arguments.length == 1 ) 
    return function() {
      var args = $.makeArray(arguments);
      args.unshift(source);
      return $.validator.format.apply( this, args );
    };
  if ( arguments.length > 2 && params.constructor != Array  ) {
    params = $.makeArray(arguments).slice(1);
  }
  if ( params.constructor != Array ) {
    params = [ params ];
  }
  $.each(params, function(i, n) {
    source = source.replace(new RegExp("\\{" + i + "\\}", "g"), n);
  });
  return source;
};
Run Code Online (Sandbox Code Playgroud)