ARTS
      
        Mon, 07 Jan 2019 12:07:46 +0000
      
    
    - A (Algotithm) 至少做一个leetcode的算法题
 - R (Review) 阅读并点评一篇英文的技术文章
 - T (Tip) 学习一个技术技巧
 - S (Share) 分享一篇有观点和思考的技术文章
 
每周一次,坚持一年
Algorithm
Description Valid Parentheses
Solution
/**
 * https://leetcode.com/problems/valid-parentheses/
 * @param {string} s
 * @return {boolean}
 */
var isValid = function(s) {
    var stack = [];
    var arrs = s.split('');
    var firstItem = arrs.shift();
    if (s.length % 2 !== 0) {
        return false;
    }
    while (arrs.length) {
        var secondItem = arrs.shift();
        if (parenthesesObject[firstItem] === secondItem) {
            firstItem = stack.pop();
            continue;
        }
        stack.push(firstItem);
        firstItem = secondItem;
    }
    if (stack.length) {
        return false;
    }
    return true;
};
var parenthesesObject = {
    '{': '}',
    '(': ')',
    '[': ']',
};
var s = '()';
console.log(isValid(s));
var s = "[";
console.log(isValid(s));
Review
How to write a good README for your GitHub project? https://bulldogjob.com/news/449-how-to-write-a-good-readme-for-your-github-project
如何写一篇好的 Readme。Readme 是我们在开始一个新项目的第一个文件。 Readme 指在是其他人更容易理解我们的代码。 使用英语可以让更多受众了解这个项目。 Readme 用 markdown 格式,使用 markdown 语法。 一篇好的 readme 包含:标题、介绍、技术细节、如何启动几部分,也可包含目录、插图、示例等。 好的示例如下:
Tip
Js 原生的 onchange 就是 input 失去焦点的时候触发的。 oninput 会在 input 输入框值改变的时候实时触发。
Share
最近也在思考如何开发一个 js 库。并不单单只是考虑 js 的逻辑怎么书写,也包含了代码之外的考虑。
代码之外的考虑包含:
- 脚手架
 - 构建
    
$ npm run build
 - 单元测试
    
$ npm run test
 - 发布
    
$ npm publish
 - 目录结构
    
- lib/
 - src/
 - package.json
 - .gitignore
 - .npmrc
 - README.md
 - CHANGELOG.md // 更新日志
 - example // 示例代码。
 
 
blog comments powered by Disqus