追风

我的前端之路


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 搜索

git基础

发表于 2019-03-01 | 分类于 git

git基础管理

基础命令配置

  • git config user-name 局部设置
  • git config –global user.name ‘XXX’ 全部设置
  • git config –global user.emial ‘xxx’

初始化仓库

git init => .git 文件夹存取的是git仓库的版本信息

工作区到暂存区

  • git add ‘XXX’ => 把指定的文件提交到暂存区
  • git add . => 提交修改和新增的文件,但不包含删除的
  • git add -u => 提交修改和删除的文件,但不包含新增的
  • git add -A => 同时具备 . 和 -u 特征
  • git status => 查看文件状态
  • .gitignore => 忽略提交的文件

暂存区到历史区

  • git commit => 提交到历史区
  • git commit -m ‘XXXX’ => 提交到历史区
  • git log => 查看提交记录,版本信息
  • git relog => 查看所有历史记录(包括历史区回滚后)

查看每个阶段代码的区别

  • git diff => 工作区 VS 暂存区
  • git diff master => 工作区 VS 历史区的master分支
  • git diff –cached => 暂存区 VS 历史区

git和gitHub同步

1
2
3
4
5
6
7
8
9
10
11
12
13
git remote -v 
查看所有的关联信息
git remote add [xxx] [远程仓库git地址]
git clone [远程仓库地址] [克隆后的名字:可以不设置,默认是仓库名]
建立关联
git remote remove xxx[远程仓库git地址]
1、远程仓库关联在一起的名字默认是:origin 可以自行修改
2、把本地的信息推送到远程仓库上,或者从远程仓库上拉取最新的信息到本地仓库,我们本地推送和拉取的信息,既有代码也有版本信息,所以说与其说是推送和拉取,不如说是和远程仓库保持信息的同步

在推送之前,我们都应该先拉取
$ git pull origin(这个名字就是和远程仓库关联的这个名字,以自己设置的为主) master
$ git push origin master
把自己本地信息推送到远程仓库的master分支下

js知识梳理三

发表于 2019-02-28 | 分类于 前端三剑客

数组常用方法

  • 方法的作用
  • 方法的参数
  • 方法的返回值
  • 原有数组是否改变

push

1
2
3
4
5
6
7
8
// 作用:向数组“末尾”追加新的内容
// 参数:追加的内容(可以是一个,也可是多个)
// 返回值:新增后数组的长度
// 原有数组改变
var ary = [12,23,34];
ary.push(100); //=>4 ary:[12,23,24,1000]
ary.push(100,{name:'xxx'}); //=>6
ary:[12,23,34,100,100,{...}]

pop

1
2
3
4
5
6
// 作用:删除数组最后一项
// 参数:无
// 返回:被删除的那一项内容
// 原有数组改变
var ary = [12,23,34];
ary.pop() => //34

shift

1
2
3
4
5
6
// 作用:删除数组中的第一项
// 参数:无
// 返回:被删除的那一项内容
// 原有数组改变
var ary = [12,23,34];
ary.shfit(); => 12

unshfit

1
2
3
4
5
6
7
// 作用:向数组开始位置追加新内容
// 参数:要新增的内容
// 返回:新增后数组的长度
// 原有数组改变
var ary = [12,23,34];
ary.unshfit(100,true) //=>5
// ary => [100,true,12,23,34]

阅读全文 »

js知识梳理二

发表于 2019-02-28 | 分类于 前端三剑客

JS中数据类型转型汇总

JS中的数据类型分为
基本数据类型

  • 数字 number
  • 字符串 string
  • 布尔 boolean
  • 空 null
  • 未定义 undefined

引用数据类型

  • 对象 object
    • 普通对象
    • 数组对象 (Array)
    • 正则对象 (RegExp)
    • 日期对象 (Date)
    • 数学函数 (Math)
      …
      -函数 function

      把其它数据类型转换为number类型

      1.发生的情况
      • isNaN检测的时候:当检测的值不是数字类型,浏览器会自己调用Number方法把它先转换为数字,然后再检测是否为非有效数字
        1
        2
        3
        4
        5
        6
        7
        isNaN('3') =>false
        Number('3')->3
        isNaN(3)->false

        isNaN('3px') =>true
        Number('3px')->NaN
        isNaN(NaN)->true
  • 基于parseInt/parseFloat/Number手动转换为数字类型
  • 数学运算: + - * / % ,但是“+”不仅仅是数学运算,还可能是字符串拼接

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    '3'-1 =>2
    Number('3')->3
    3-1->2

    '3px'-1 =>NaN

    '3px'+1 =>'3px1' 字符串拼接

    var i='3';
    i=i+1; =>'31'
    i+=1; =>'31'
    i++; =>4 i++就是单纯的数学运算,已经摒弃掉字符串拼接的规则
  • 在基于“==”比较的时候,有时候也会把其它值转换为数字类型

2.转换规律

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//=>转换的方法:Number(浏览器自行转换都是基于这个方法完成的)

【把字符串转换为数字】
只要遇到一个非有效数字字符,结果就是NaN
'' ->0
' ' ->0 空格(Space)
'\n' ->0 换行符(Enter)
'\t' ->0 制表符(Tab)


【把布尔转换为数字】
true ->1
false ->0

【把没有转换为数字】
null ->0
undefined ->NaN

【把引用类型值转换为数字】
首先都先转换为字符串(toString),然后再转换为数字(Number)

阅读全文 »

js知识梳理一

发表于 2019-02-28 | 分类于 前端三剑客

数据类型的详细剖析

  1. number数字类型
    NaN:not a number 但是它是数字类型的
    isNaN:检测当前值是否不是有效数字,返回true代表不是有效数字,返回false是有效数字

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    //=>语法:isNaN([value])
    var num=12;
    isNaN(num); //->检测num变量存储的值是否为非有效数字 false

    isNaN('13') =>false
    isNaN('珠峰') =>true
    isNaN(true) =>false
    isNaN(false) =>false
    isNaN(null) =>false
    isNaN(undefined) =>true
    isNaN({age:9}) =>true
    isNaN([12,23]) =>true
    isNaN([12]) =>false
    isNaN(/^$/) =>true
    isNaN(function(){}) =>true

    重要:isNaN检测的机制
    1、首先验证当前要检测的值是否为数字类型的,如果不是,浏览器会默认的把值转换为数字类型

    把非数字类型的值转换为数字
    - 其它基本类型转换为数字:直接使用Number这个方法转换的

    [字符串转数字]
    Number('13') ->13
    Number('13px') ->NaN 如果当前字符串中出现任意一个非有效数字字符,结果则为NaN
    Number('13.5') ->13.5 可以识别小数

    [布尔转数字]
    Number(true) ->1
    Number(false) ->0

    [其它]
    Number(null) ->0
    Number(undefined) ->NaN

    - 把引用数据类型值转换为数字:先把引用值调取toString转换为字符串,然后再把字符串调取Number转换为数字

    [对象]
    ({}).toString() ->'[object Object]' ->NaN

    [数组]
    [12,23].toString() ->'12,23' ->NaN
    [12].toString() ->'12' ->12

    [正则]
    /^$/.toString() ->'/^$/' ->NaN

    Number('') ->0
    [].toString() ->''
    => isNaN([]):false

    2、当前检测的值已经是数字类型,是有效数字返回false,不是返回true(数字类型中只有NaN不是有效数字,其余都是有效数字)
  2. parseInt / parseFloat

    等同于Number,也是为了把其它类型的值转换为数字类型

和Number的区别在于字符串转换分析上

Number:出现任意非有效数字字符,结果就是NaN

parseInt:把一个字符串中的整数部分解析出来,parseFloat是把一个字符串中小数(浮点数)部分解析出来

1
2
3
4
parseInt('13.5px') =>13
parseFloat('13.5px') =>13.5

parseInt('width:13.5px') =>NaN 从字符串最左边字符开始查找有效数字字符,并且转换为数字,但是一但遇到一个非有效数字字符,查找结束
  1. NaN的比较
    1
    NaN==NaN:false NaN和谁都不相等,包括自己

布尔类型

只有两个值:true / false

如何把其它数据类型转换为布尔类型?

  • Boolean
  • !
  • !!

规律:在JS中只有“0/NaN/空字符串/null/undefined”这五个值转换为布尔类型的false,其余都转换为true


阅读全文 »
1…1415
陈虎

陈虎

记录学习,记录生活,记录点滴

74 日志
12 分类
27 标签
RSS
© 2020 陈虎
由 Hexo 强力驱动
|
主题 — NexT.Mist v5.1.4