js对象之对象间的原型

原型

原型用来描述对象之间的继承关系。每个对象都有原型,通过[[prototype]]这个内部属性描述。对象会继承其原型的所有属性和方法。

1
2
3
4
5
6
7
8
9
10
let obj1 = {
name: 'obj1',
desc: function() {
console.log("obj name is:", this.name)
}
}

let obj2 = Object.create(obj1); //通过obj1创建对象obj2, obj2的原型是obj1
obj2.name = 'obj2';
obj2.desc(); // obj2 继承了obj2的原型 obj1中的方法

Read More

js对象之单一对象

js所有对象都是从字符串到值得映射,对象的属性分为三种:数据属性(最常见)、访问器(设置属性的的获取和设置)、内置属性(在语言规范中定义的js无法直接访问)。

访问属性

访问属性有两种方法,点操作符和中括号操作符。

1
2
3
4
let obj = {test: 'hello'};
obj.test;
let keyName = 'test';
obj['test'] =+ obj.test == obj[keyName]

使用点操作符比较方便顺手,使用中括号可以通过计算变量后再得到属性;

Read More

git笔记

使用git步骤

  1. 安装软件后打开gitbash

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    git config --global user.name "your name"
    git config --global user.email "yourname@example.com"

    git init
    git add <hello.txt> # 把所有要提交的文件修改放到暂存区
    git commit -m 'add a file' # 把暂存区的所有内容提交到当前分支
    git status #掌握工作区状态
    git diff #查看文件修改内容
    git log #查看提交历史
    git log --pretty=oneline
    git reset --hard HEAD^ #回退到上一个版本
    HEAD^^(上上版本),HEAD~100(往上100个版本)
    commit id(版本号) 可回到指定版本
    git reflog #查看历史命令

    Read More

git克隆

git 支持多种协议:本地协议,ssh 协议,git 协议,http,https 协议。

当我关联远程分支时使用 http 或 https 协议则每次提交代码都需要输入用户名和密码,所以更换为 git 协议。

查看使用的传输协议:

Read More

node中c和c++模块

准备工作

node 使用 c++插件时需要使用 node-gyp 包,node-gyp 把 c++源码编译为二进制文件,js 在调用二进制文件,编译后的二进制文件模块调用就和 js 的模块调用一样。

1
npm install -g node-gyp

除了 node-gyp 还需要安装其他准备工具。

Read More

travis-ci构建与部署

参考网上的一篇文章,实现了项目提交后再travics-cl上自动构建部署 链接

travis-cl 是在线持续集成工具,对于项目开发时可以本地编写源码,推到github上时出发travis-cl,Travis-cl进行后续操作,包括代码测试、代码压缩打包、代码部署等操作

对于传统的开发流程,编写源码后再本地进行代码测试、编译、压缩、打包等操作,得到最终代码后再部署到服务器上。需要花费大量的时间特别是测试部分。使用持续集成后只需要把源码推到github上,后续所有工作都自动完成。

git命令

git里的对象

共有四种对象,分别是blob、tree、commit、tag。每个对象包含了类型、大小和内容

blob

blob对象用来存储文件数据,通常是一个文件,一个blob对象的内容如下:

blob | size |
——————————————
文件内容

查看blob对象里的内容: git show sha1是文件经过sha1处理过的标识符

Read More

npm工具与发布

npm 工具的制作

初始化一个目录,然后在目录里面运行 npm init 获取 package.json 文件

在 package.json 文件里面添加 bin,author,maintainers 字段,

1
2
3
4
5
6
7
8
9
10
11
12
"bin": {
"hello": "hello" // npm会创建软连接到npm执行目录下,软连接名为hello ,执行的文件为当前目录下的hello文件,可更改
},
"version": "1.0.1", // 通过npm version major | minor | patch | premajor | preminor | prepatch | prerelease | from-git 更新版本号
"maintainers": [ // 包维护者列表,通过此字段值来进行权限认证
{
"name": "bingxl",
"email": "2282152858@qq.com"
}
],
"author": "bingxl",

Read More

apt命令

apt简介

  高级包装工具(Advanced Packaging Tools)是Debian及其衍生发行版(如:ubuntu)的软件包管理器。APT可以自动下载,配置,安装二进制或者源代码格式的软件包。

  apt-get命令一般需要root权限执行,所以一般跟着sudo命令。与/etc/apt/sources.list中匹配。

apt常用命令集合

Read More