【若川视野 x 源码共读】第24期 | vue2工具函数
-
cached -
capitalize, 充分利用cache的功能,缓存用户数据。第一次把源码拿来调试,和听课的感受确实很不一样。
-
camelizse, 之前写vue的时候特别担心驼峰的规则写错,只会写handleClick这类的命名,看了这个函数之后发现符合标准的命名好多啊,写代码再也不怕啦
-
复习了一部分的正则表达式,感觉良好;
var camelizeRE = /-(\w)/g; var camelize = cached(function (str) { return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; }) }); // replace function replacer(match, p1, p2, p3, offset, string) { return [p1, p2, p3].join(' - '); } var newString = 'abc12345#$*%'.replace(/([^\d]*)(\d*)([^\w]*)/, replacer); console.log(newString); // abc - 12345 - #$*% - 知识点补充\w 匹配字母或数字或下划线或汉字 等价于 'A-Za-z0-9_'
总结:将str,replace并缓存到cache对象中(cache无原型对象);replace的第二个参数可以是fn,并且可以匹配多个参数。\w 匹配字母或数字或下划线或汉字 等价于 '[^A-Za-z0-9_]'
中文注释很给力啊,很好帮助理解代码, 希望通过看utils们,总结出自己开发过程中常用的utils。