前端小白的我的習慣和筆記(一)

快鍵鍵

已經敲代碼這麼久,分享一下本身的小習慣(可能有點亂有點雜)php

win+Shtml

  • 能夠說是window用戶的神器,能夠隨意開啓全局的軟件,配合cmd使用,alt+F4直接關閉這樣就省下按鼠標的時間

ctrl+shift+tabnode

  • 在webstorm中快速打開本項目文件也能夠直接打開cmd,不會打開webstorm自帶的cmd我 習慣使用alt+F12

alt+tabweb

  • 這個切換窗口大家能夠用的特別多,可是ctrl+alt+tab大家確定用的少吧,這個大家用多了,就發現仍是比alt+tab好用的,特別你開啓不少窗口的時候

ctrl+shift+escchrome

  • 開啓任務管理器大家確定知道ctrl+alt+.但是我是68的鍵盤沒有.表示很無奈

ctrl+wnpm

  • 關閉網頁用chrome瀏覽器用多了,蛋疼的是不能雙擊關閉網頁,後來知道能夠按滾綸關閉,可是,我鼠標不怎麼樣,仍是這個比較方便

ctrl+c數組

  • 這個你不會覺得我要跟你說複製,呵呵,這個是webstorm中回到行首,解決了一部分不喜歡的方向鍵的煩惱

ctrl+tab或ctrl+1,2,3瀏覽器

  • 快速切換瀏覽器窗口,能夠只是強迫症來的時候用的多,或者吃飯一隻手的時候能夠用

直接上圖dom

對於英語單詞仍是比較吃力的我,簡直是我人生的福音,超超超級好用phpstorm

phpstorm多窗口alt+窗口

  • 解決用習慣了webstorm快速轉移phpstorm,固然少不了快鍵鍵了,直接上圖

若是你要查看本身的id,直接在cmd輸入ipconfig完美解決

下包

在用webstorm打開cmdalt+F12

npm init
npm install 包名  --save  //save把包信息放在package
dower install 包名  //直接在本文件夾下面生成包,你要是怕麻煩能夠用這個下包工具

其實你也能夠直接報npm的下載地址改爲淘寶鏡像,在安裝路徑npm文件夾下npmrc文件

ctrl+shift+F10 webstorm直接打開瀏覽器若是是js文件就會直接打開控制檯

ctrl+A兩次 在用oneNote的時候你會發現ctrl+A會全選一行內容,兩次就會全選所有內容

F11 全屏--看視頻專用

win+左/右 分屏,能夠適合邊看文檔邊敲代碼

win+上 全屏

win+下 最小化(這個是否是很貼心又解決了用鼠標的煩惱呀)

Fn+F6 關閉電腦觸屏版

  • 語法糖
    • 糖在不改變其所在位置的語法結構的前提下實現了運行時等價,之因此叫語法糖,是由於加糖後的代碼寫的很爽,代碼更簡潔流暢語義天然
    • 例如:for循環,三元表達式---

解決node_modules卡頓問題

若是以爲亂的話能夠看下面的這張圖簡要的寫了一下

Alt+F1第七個 所在的文件路徑(最新版webstorm好像不行)

ctrl+shift+左.右 目錄調大調小

ctrl+F12 查找定義多少函數等目錄(這麼高級的功能我還沒怎麼用過)

alt+左.右 窗口文件左右切換(這麼好用仍是常常忘記真的不該該)

Alt+1  打開關閉項目窗口

itar 遍歷一個for循環

cc:ie6 兼容ie6(而後改爲7,8就好了,不至關於兼容ie6,7,8)

自定義代碼塊保存路徑 找到c盤安裝目錄config/template裏面就是的

給桌面時間添加秒

學習篇

無論何時要不斷保持學習的態度

再與產品經理打交道

  • 第三方選擇

    • 你能夠問清楚對方的真實需求,給出一個你能夠作到的方案,而不是直接拒絕對方的方案
  • 在工做和生活中,不要把全部事情的解決方案都放在:不(第一選擇,要贏)或者是(第二選擇,認慫)上,若是隻存在兩種選擇,很容易就進入一種推拉的環境中,其實是能夠考慮第三選擇.

  • 第三選擇並非某一方的妥協,他的核心思想是創造力,找到新的出路,讓雙方協同找到一個你們都能接受的新方案

知識篇

js基礎部分

1、         數據類型

1)       Number 數據類型

2)      String  字符串(雙引號, 單引號)

3)      Boolean 布爾數據類型(true, false)

4)      undefined  變量未初始化(沒有給變量賦值)

5)      null 變量未引用(值爲空)

6)      object  對象     array 數組

2、         算術運算符

1)     兩個數字類型變量相加或相減,獲得一個數字類型

2)     一個數字類型和一個字符串相加,獲得一個字符串

3)     一個數字類型和一個非數字類型的字符串獲得NaN

3、         Math對象

1)     Math.ceil()  天花板函數  向上取整(1.1---2)

2)     Math.floor() 地板函數   向下取整(1.1---1)

3)     Math.max()   Math.min()

4)     Math.pow(n1,n2)    n1的n2次方

5)     Math.round()    四捨五入

6)     Math.random()   [0,1)的隨機數

4、         數據類型轉換

1.     數字類型轉字符串

a)     Strong()    b)變量.toString()

1.     字符串轉數字類型

  • Number()  
    • 數字類型和小數類型字符串,轉換成數字,
    • 非數字字符串,轉換成NaN
  • parseInt()
    • 數字開頭的字符串,轉換以後獲得前面的數字
    • 非數字---NaN    小數---取整
  • parseFloat
  • 跟parseInt同理,不一樣點是 小數---小數

1.     轉布爾類型

  • Boolean()
  •   數字和字符串       true  
  •   undefined null  0   false

1.     邏輯運算符

  • &與  ||或   !非
  • 等號運算符

  • 「==」  只判斷內容不判斷數據類型

  • 「===」 判斷內容還判斷數字類型

  • 「!==」 不只判斷內容還判斷數字類型
  • 條件判斷
  • If(條件){true內容}else{false內容}
  • If(條件){true的內容false執行下面內容}else if(條件){true的內容}else{}
  • While(條件表達式){true循環執行,false,循環終止}
  • Break語句    只要代碼遇到break,程序當即中止
  • Continue      跳出本次循環,整個循環繼續執行
  • Switch(條件){循環體}
  • 三元表達式
  •   表達式?true:false;

  • 優先級
    • ()優先級最高  一元運算符++  -- !
      • /  %  +    -
  • 若是咱們想把函數內部的值賦值爲外部,必須使用return;
  • 若是沒有return或者return沒有值,那麼返回值都是undefined

//隱式全局變量

//隱式全局變量
function fn(){
    //b和c都是隱式全局變量
    var a = b = c = 1;
    //e和f都是隱式全局變量(分號至關於換行)
    var d = 1;e =2;f=3;
    //g和i都不是隱式全局變量
    var g = 1,h= 2,i=3;
}
  • 對象自己沒有length,因此不能用for循環遍歷

    11.   for(var k in aaa){
    //        console.log(k);
    //        //aaa.k表明aaa這個對象的k屬性的值,並非k對應的變量值的屬性。
    ////        console.log(aaa.k);
    //        //aaa[k],表明的是aaa這個對象中k這個變量值對應的屬性值。
    //        console.log(aaa[k]);
    //    }
  • 在調用函數的時候,傳參的過程其實就是用實參給形參賦值的過程
    •    當參數爲值類型的時候,函數內和函數外的兩個變量徹底不一樣,僅僅只是存的值同樣而已,修改時互不影響
    •    當參數爲引用類型的時候,函數內和函數外的兩個變量不一樣,可是共同指向同一個對象,在函數內修改對象數據時會影響外部
    var num = 1;
    fn1(num);
    console.log(num);
    function fn1(aaa){
        aaa = aaa*10;
    }
    //複雜數據類型
   var obj = new Object();
    obj.name = "張三";
   fn2(obj);
    console.log(obj);
    function fn2(object){
       object.name = "李四";
   }

五 判斷數組和轉換數組。

Instanceof:  是一個關鍵字。    判斷A是不是B類型。

布爾類型值 = A Instanceof B ;

Array.isArray() //HTML5中新增    判斷是否是數組

布爾類型值 = Array.isArray(變量) ;

調用者:Array            參數:變量(被檢測值)          返回值:布爾類型   

toString()       //把數組轉換成字符串,每一項用,分割

字符串  =  數組.toString();

valueOf()       //返回數組對象自己

數組自己 = 數組.valueOf();

Join               //根據每一個字符把數組元素連起來變成字符串

字符串  =  數組.join(變量);

變量能夠有能夠沒有。不寫默認用逗號分隔,無縫鏈接用空字符串。

六 數組增刪和換位置(原數組講被修改)

push() 

  • 在數組最後面插入項,返回數組的長度

  • 數組1改後的長度  =  數組1.push(元素1);

pop()  

  • 取出數組中的最後一項,返回最後一項

  • 被刪除的元素 =  數組1.pop();

unshift() 

  • 在數組最前面插入項,返回數組的長度

  • 數組1改後的長度  =  數組1.unshift(元素1);

shift()  

  • 取出數組中的第一個元素,返回最後一項

  • 被刪除的元素  =  數組1.shift();

reverse()

  • 翻轉數組(原數組講唄反轉,返回值也是被反轉後的數組)

  • 反轉後的數組 =  數組1.reverse();

sort(); 

  • 給數組排序,返回排序後的數組。如何排序看參數。

  • 從小到大排序後的數組 =  數組1.sort(function(a,b){   return a-b;});

  • 無參:按照數組元素的首字符對應的Unicode編碼值從小到大排列數組元素。

  • 帶參:必須爲函數(回調函數--callback)。函數中帶有兩個參數,表明數組中的          先後元素。若是計算後(a-b),返回值爲負數,a排b前面。等於0不動。        返回值爲正數,a排b後面。

concat() 

  • 把參數拼接到當前數組

  • 新數組 = 數組1.concat(數組2);

slice()

  • 從當前數組中截取一個新的數組,不影響原來的數組,參數start從0開始,end從1開始

  • 新數組 = 數組1.slice(索引1,索引2);

splice()

  • 刪除或替換當前數組的某些項目,參數start,deleteCount,options(要替換的項目)

  • 新數組 = 數組1.splice(起始索引,結束索引,替換內容);

indexOf()、lastIndexOf()  

  • 若是沒找到返回-1

  • 索引值 = 數組.indexOf/lastIndexOf(數組中的元素);

迭代方法 不會修改原數組

every()、filter()、forEach()、map()、some()

數組/boolean/無 = 數組.every/filter/forEach/map/some(
                            function(element,index,arr){
                                            程序和返回值;                       
   }
);

 這個屬於ES6的內容我仍是在後面詳細介紹吧

清空數組

var array = [1,2,3,4,5,6];

array.splice(0,array.length); //刪除數組中全部項目

array.length = 0; //length屬性能夠賦值,其它語言中length是隻讀

array = [];  //推薦

相關文章
相關標籤/搜索