• js 中常用的format函数


    js中经常要写dom 和 数据拼接的情况,下面这种format传参方式可以解决。

    $.format = function (source, params) {
        if (arguments.length == 1)
            return function () {
                var args = $.makeArray(arguments);
                args.unshift(source);
                return $.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;
    };

    测试代码:

    1 $.format("<div>我是字符串A我的值是{0}  ,我是字符串A我的值是{1}  </div>","aaa","bbb");//'<div>我是字符串A我的值是aaa  ,我是字符串A我的值是bbb  </div>'

    关于argument:

    arguments是一个对象不是一个数组Array 。它类似于Array,但除了length属性和索引元素之外没有任何Array属性。

    1 // 由于arguments不是 Array,所以无法使用 Array 的方法,所以通过这种方法转换为数组
    2  
    3 var args = [].slice.call(arguments);  // 方式一
    4 var args = Array.prototype.slice.call(arguments); // 方式二
    5  
    6 // 下面是 es6 提供的语法
    7 let args = Array.from(arguments)   // 方式一
    8 let args = [...arguments]; // 方式二

    转载地址:https://www.cnblogs.com/william-lin/p/3472983.html 

  • 相关阅读:
    10-关于DOM的事件操作
    09-伪数组 arguments
    08-函数
    07-常用内置对象
    Django -- 2.http协议
    Django -- 1.web应用
    web前端 --- JavaScrip之BOM
    web前端 --- JavaScrip函数与对象
    web前端 --- JavaScrip基础
    web前端 --- CSS下篇
  • 原文地址:https://www.cnblogs.com/lixiuming521125/p/16715692.html
Copyright © 2020-2023  润新知