1. 程式人生 > >前端最全的 API 集錦

前端最全的 API 集錦

一、節點

1.1 節點屬性

Node.nodeName   //返回節點名稱,只讀
Node.nodeType   //返回節點型別的常數值,只讀
Node.nodeValue  //返回Text或Comment節點的文字值,只讀
Node.textContent  //返回當前節點和它的所有後代節點的文字內容,可讀寫
Node.baseURI    //返回當前網頁的絕對路徑

Node.ownerDocument  //返回當前節點所在的頂層文件物件,即document
Node.nextSibling  //返回緊跟在當前節點後面的第一個兄弟節點
Node.previousSibling  //返回當前節點前面的、距離最近的一個兄弟節點
Node.parentNode //返回當前節點的父節點 Node.parentElement //返回當前節點的父Element節點 Node.childNodes //返回當前節點的所有子節點 Node.firstChild //返回當前節點的第一個子節點 Node.lastChild //返回當前節點的最後一個子節點 //parentNode介面 Node.children //返回指定節點的所有Element子節點 Node.firstElementChild //返回當前節點的第一個Element子節點 Node.lastElementChild //返回當前節點的最後一個Element子節點
Node.childElementCount //返回當前節點所有Element子節點的數目。

1.2 操作

Node.appendChild(node)   //向節點新增最後一個子節點
Node.hasChildNodes()   //返回布林值,表示當前節點是否有子節點
Node.cloneNode(true);  // 預設為false(克隆節點), true(克隆節點及其屬性,以及後代)
Node.insertBefore(newNode,oldNode)  // 在指定子節點之前插入新的子節點
Node.removeChild(node)   //刪除節點,在要刪除節點的父節點上操作
Node.replaceChild(newChild,oldChild)  //替換節點
Node.contains(node) //返回一個布林值,表示引數節點是否為當前節點的後代節點。 Node.compareDocumentPosition(node) //返回一個7個位元位的二進位制值,表示引數節點和當前節點的關係 Node.isEqualNode(noe) //返回布林值,用於檢查兩個節點是否相等。所謂相等的節點,指的是兩個節點的型別相同、屬性相同、子節點相同。 Node.normalize() //用於清理當前節點內部的所有Text節點。它會去除空的文字節點,並且將毗鄰的文字節點合併成一個。 //ChildNode介面 Node.remove() //用於刪除當前節點 Node.before() // Node.after() Node.replaceWith()

1.3 Document節點

1.3.1 Document節點的屬性

document.doctype   //
document.documentElement  //返回當前文件的根節點
document.defaultView   //返回document物件所在的window物件
document.body   //返回當前文件的<body>節點
document.head   //返回當前文件的<head>節點
document.activeElement  //返回當前文件中獲得焦點的那個元素。

//節點集合屬性
document.links  //返回當前文件的所有a元素
document.forms  //返回頁面中所有表單元素
document.images  //返回頁面中所有圖片元素
document.embeds  //返回網頁中所有嵌入物件
document.scripts  //返回當前文件的所有指令碼
document.styleSheets  //返回當前網頁的所有樣式表

//文件資訊屬性
document.documentURI  //表示當前文件的網址
document.URL  //返回當前文件的網址
document.domain  //返回當前文件的域名
document.lastModified  //返回當前文件最後修改的時間戳
document.location  //返回location物件,提供當前文件的URL資訊
document.referrer  //返回當前文件的訪問來源
document.title    //返回當前文件的標題
document.characterSet屬性返回渲染當前文件的字符集,比如UTF-8、ISO-8859-1document.readyState  //返回當前文件的狀態
document.designMode  //控制當前文件是否可編輯,可讀寫
document.compatMode  //返回瀏覽器處理文件的模式
document.cookie   //用來操作Cookie

1.3.2 Document節點的方法

(1)讀寫方法

document.open()   //用於新建並開啟一個文件
document.close()   //不安比open方法所新建的文件
document.write()   //用於向當前文件寫入內容
document.writeIn()  //用於向當前文件寫入內容,尾部新增換行符。

(2)查詢節點

document.querySelector(selectors)   //接受一個CSS選擇器作為引數,返回第一個匹配該選擇器的元素節點。
document.querySelectorAll(selectors)  //接受一個CSS選擇器作為引數,返回所有匹配該選擇器的元素節點。
document.getElementsByTagName(tagName)  //返回所有指定HTML標籤的元素
document.getElementsByClassName(className)   //返回包括了所有class名字符合指定條件的元素
document.getElementsByName(name)   //用於選擇擁有name屬性的HTML元素(比如<form>、<radio>、<img>、<frame>、<embed>和<object>等)
document.getElementById(id)   //返回匹配指定id屬性的元素節點。
document.elementFromPoint(x,y)  //返回位於頁面指定位置最上層的Element子節點。

(3)生成節點

document.createElement(tagName)   //用來生成HTML元素節點。
document.createTextNode(text)   //用來生成文字節點
document.createAttribute(name)  //生成一個新的屬性物件節點,並返回它。
document.createDocumentFragment()  //生成一個DocumentFragment物件

(4)事件方法

document.createEvent(type)   //生成一個事件物件,該物件能被element.dispatchEvent()方法使用
document.addEventListener(type,listener,capture)  //註冊事件
document.removeEventListener(type,listener,capture)  //登出事件
document.dispatchEvent(event)  //觸發事件

(5)其他

document.hasFocus()   //返回一個布林值,表示當前文件之中是否有元素被啟用或獲得焦點。
document.adoptNode(externalNode)  //將某個節點,從其原來所在的文件移除,插入當前文件,並返回插入後的新節點。
document.importNode(externalNode, deep)   //從外部文件拷貝指定節點,插入當前文件。

1.4 Element節點

1.4.1 Element節點的屬性

(1)特性屬性

Element.attributes  //返回當前元素節點的所有屬性節點
Element.id  //返回指定元素的id屬性,可讀寫
Element.tagName  //返回指定元素的大寫標籤名
Element.innerHTML   //返回該元素包含的HTML程式碼,可讀寫
Element.outerHTML  //返回指定元素節點的所有HTML程式碼,包括它自身和包含的的所有子元素,可讀寫
Element.className  //返回當前元素的class屬性,可讀寫
Element.classList  //返回當前元素節點的所有class集合
Element.dataset   //返回元素節點中所有的data-*屬性。

(2)尺寸屬性

Element.clientHeight   //返回元素節點可見部分的高度
Element.clientWidth   //返回元素節點可見部分的寬度
Element.clientLeft   //返回元素節點左邊框的寬度
Element.clientTop   //返回元素節點頂部邊框的寬度
Element.scrollHeight  //返回元素節點的總高度
Element.scrollWidth  //返回元素節點的總寬度
Element.scrollLeft   //返回元素節點的水平滾動條向右滾動的畫素數值,通過設定這個屬性可以改變元素的滾動位置
Element.scrollTop   //返回元素節點的垂直滾動向下滾動的畫素數值
Element.offsetHeight   //返回元素的垂直高度(包含border,padding)
Element.offsetWidth    //返回元素的水平寬度(包含border,padding)
Element.offsetLeft    //返回當前元素左上角相對於Element.offsetParent節點的垂直偏移
Element.offsetTop   //返回水平位移
Element.style  //返回元素節點的行內樣式

(3)節點相關屬性

Element.children   //包括當前元素節點的所有子元素
Element.childElementCount   //返回當前元素節點包含的子HTML元素節點的個數
Element.firstElementChild  //返回當前節點的第一個Element子節點  
Element.lastElementChild   //返回當前節點的最後一個Element子節點  
Element.nextElementSibling  //返回當前元素節點的下一個兄弟HTML元素節點
Element.previousElementSibling  //返回當前元素節點的前一個兄弟HTML節點
Element.offsetParent   //返回當前元素節點的最靠近的、並且CSS的position屬性不等於static的父元素。

1.4.2 Element節點的方法

(1)位置方法

getBoundingClientRect()  
// getBoundingClientRect返回一個物件,包含top,left,right,bottom,width,height // width、height 元素自身寬高
// top 元素上外邊界距視窗最上面的距離
// right 元素右外邊界距視窗最上面的距離
// bottom 元素下外邊界距視窗最上面的距離
// left 元素左外邊界距視窗最上面的距離
// width 元素自身寬(包含border,padding) 
// height 元素自身高(包含border,padding) 

getClientRects()   //返回當前元素在頁面上形參的所有矩形。

// 元素在頁面上的偏移量  
var rect = el.getBoundingClientRect()  
return {   
  top: rect.top + document.body.scrollTop,   
  left: rect.left + document.body.scrollLeft  
}

(2)屬性方法

Element.getAttribute():讀取指定屬性  
Element.setAttribute():設定指定屬性  
Element.hasAttribute():返回一個布林值,表示當前元素節點是否有指定的屬性  
Element.removeAttribute():移除指定屬性

(3)查詢方法

Element.querySelector()  
Element.querySelectorAll()  
Element.getElementsByTagName()  
Element.getElementsByClassName()

(4)事件方法

Element.addEventListener():新增事件的回撥函式  
Element.removeEventListener():移除事件監聽函式  
Element.dispatchEvent():觸發事件

//ie8
Element.attachEvent(oneventName,listener)
Element.detachEvent(oneventName,listener)

// event物件  
var event = window.event||event;    

// 事件的目標節點  
var target = event.target || event.srcElement;

// 事件代理  
ul.addEventListener('click', function(event) {   
  if (event.target.tagName.toLowerCase() === 'li') {   
    console.log(event.target.innerHTML)   
  }  
});

(5)其他

Element.scrollIntoView()   //滾動當前元素,進入瀏覽器的可見區域

//解析HTML字串,然後將生成的節點插入DOM樹的指定位置。
Element.insertAdjacentHTML(where, htmlString); 
Element.insertAdjacentHTML('beforeBegin', htmlString); // 在該元素前插入  
Element.insertAdjacentHTML('afterBegin', htmlString); // 在該元素第一個子元素前插入 
Element.insertAdjacentHTML('beforeEnd', htmlString); // 在該元素最後一個子元素後面插入 
Element.insertAdjacentHTML('afterEnd', htmlString); // 在該元素後插入

Element.remove()  //用於將當前元素節點從DOM中移除
Element.focus()   //用於將當前頁面的焦點,轉移到指定元素上

二、CSS操作

(1)類名操作

//ie8以下
Element.className  //獲取元素節點的類名
Element.className += ' ' + newClassName  //新增一個類名

//判斷是否有某個類名
function hasClass(element,className){
  return new RegExp(className,'gi').test(element.className);
}

//移除class
function removeClass(element,className){
  element.className = element.className.replace(new RegExp('(^|\\b)' + className.split(' ').join('|') + '(\\b|$)', 'gi'),'');
}

//ie10 
element.classList.add(className)  //新增
element.classList.remove(className)  //刪除
element.classList.contains(className)  //是否包含
element.classList.toggle(className)  //toggle class

(2)style操作

element.setAttribute('style','')

element.style.backgroundColor = 'red'

element.style.cssText //用來讀寫或刪除整個style屬性

element.style.setProperty(propertyName,value)  //設定css屬性
element.style.getPropertyValue(property)  //獲取css屬性
element.style.removeProperty(property)  //刪除css屬性
操作非內聯樣式
//ie8
element.currentStyle[attrName]
//ie9+
window.getComputedStyle(el,null)[attrName] 
window.getComputedStyle(el,null).getPropertyValue(attrName)
//偽類
window.getComputedStyle(el,':after')[attrName]

三、物件

3.1 Object物件

(1)生成例項物件

var o = new Object()

(2)屬性

Object.prototype   //返回原型物件

(3)方法

Object.keys(o)   //遍歷物件的可列舉屬性
Object.getOwnPropertyName(o)   //遍歷物件不可列舉的屬性

物件例項的方法

valueOf():返回當前物件對應的值。  
toString():返回當前物件對應的字串形式。  
toLocaleString():返回當前物件對應的本地字串形式。  
hasOwnProperty():判斷某個屬性是否為當前物件自身的屬性,還是繼承自原型物件的屬性。 
isPrototypeOf():判斷當前物件是否為另一個物件的原型。
propertyIsEnumerable():判斷某個屬性是否可列舉。

3.2 Array物件

(1)生成例項物件

var a = new Array()

(2)屬性

a.length  //長度

(3)Array.isArray()

Array.isArray(a)   //用來判斷一個值是否為陣列

(4)Array例項的方法

a.valueof()   //返回陣列本身
a.toString()  //返回陣列的字串形式
a.push(value,vlaue....)   //用於在陣列的末端新增一個或多個元素,並返回新增新元素後的陣列長度。
pop()   //用於刪除陣列的最後一個元素,並返回該元素
join()  //以引數作為分隔符,將所有陣列成員組成一個字串返回。如果不提供引數,預設用逗號分隔。
concat()  //用於多個數組的合併。它將新陣列的成員,新增到原陣列的尾部,然後返回一個新陣列,原陣列不變。
shift()  //用於刪除陣列的第一個元素,並返回該元素。
unshift(value)  //用於在陣列的第一個位置新增元素,並返回新增新元素後的陣列長度。
reverse()   //用於顛倒陣列中元素的順序,返回改變後的陣列
slice(start_index, upto_index);   //用於提取原陣列的一部分,返回一個新陣列,原陣列不變。第一個引數為起始位置(從0開始),第二個引數為終止位置(但該位置的元素本身不包括在內)。如果省略第二個引數,則一直返回到原陣列的最後一個成員。負數表示倒數第幾個。
splice(index, count_to_remove, addElement1, addElement2, ...);   //用於刪除原陣列的一部分成員,並可以在被刪除的位置新增入新的陣列成員,返回值是被刪除的元素。第一個引數是刪除的起始位置,第二個引數是被刪除的元素個數。如果後面還有更多的引數,則表示這些就是要被插入陣列的新元素。
sort()   //對陣列成員進行排序,預設是按照字典順序排序。排序後,原陣列將被改變。如果想讓sort方法按照自定義方式排序,可以傳入一個函式作為引數,表示按照自定義方法進行排序。該函式本身又接受兩個引數,表示進行比較的兩個元素。如果返回值大於0,表示第一個元素排在第二個元素後面;其他情況下,都是第一個元素排在第二個元素前面。
map()   //對陣列的所有成員依次呼叫一個函式,根據函式結果返回一個新陣列。
map(elem,index,arr)   //map方法接受一個函式作為引數。該函式呼叫時,map方法會將其傳入三個引數,分別是當前成員、當前位置和陣列本身。
forEach()   //遍歷陣列的所有成員,執行某種操作,引數是一個函式。它接受三個引數,分別是當前位置的值、當前位置的編號和整個陣列。
filter()   //引數是一個函式,所有陣列成員依次執行該函式,返回結果為true的成員組成一個新陣列返回。該方法不會改變原陣列。
some()    //用來判斷陣列成員是否符合某種條件。接受一個函式作為引數,所有陣列成員依次執行該函式,返回一個布林值。該函式接受三個引數,依次是當前位置的成員、當前位置的序號和整個陣列。只要有一個數組成員的返回值是true,則整個some方法的返回值就是true,否則false。
every()   //用來判斷陣列成員是否符合某種條件。接受一個函式作為引數,所有陣列成員依次執行該函式,返回一個布林值。該函式接受三個引數,依次是當前位置的成員、當前位置的序號和整個陣列。所有陣列成員的返回值都是true,才返回true,否則false。
reduce()   //依次處理陣列的每個成員,最終累計為一個值。從左到右處理(從第一個成員到最後一個成員)
reduceRight()  //依次處理陣列的每個成員,最終累計為一個值。從右到左(從最後一個成員到第一個成員)
indexOf(s)   //返回給定元素在陣列中第一次出現的位置,如果沒有出現則返回-1。可以接受第二個引數,表示搜尋的開始位置
lastIndexOf()  //返回給定元素在陣列中最後一次出現的位置,如果沒有出現則返回-1。

3.3 Number物件

(1)生成物件

var n = new Number()

(2)Number物件的屬性

Number.POSITIVE_INFINITY:正的無限,指向InfinityNumber.NEGATIVE_INFINITY:負的無限,指向-InfinityNumber.NaN:表示非數值,指向NaNNumber.MAX_VALUE:表示最大的正數,相應的,最小的負數為-Number.MAX_VALUE。  
Number.MIN_VALUE:表示最小的正數(即最接近0的正數,在64位浮點數體系中為5e-324),相應的,最接近0的負數為-Number.MIN_VALUE。  
Number.MAX_SAFE_INTEGER:表示能夠精確表示的最大整數,即9007199254740991Number.MIN_SAFE_INTEGER:表示能夠精確表示的最小整數,即-9007199254740991

(4)Number物件例項的方法

toString()   //用來將一個數值轉為字串形式.可以接受一個引數,表示輸出的進位制。如果省略這個引數,預設將數值先轉為十進位制,再輸出字串;否則,就根據引數指定的進位制,將一個數字轉化成某個進位制的字串。
toFixed()   //用於將一個數轉為指定位數的小數,返回這個小數對應的字串。
toExponential()  //用於將一個數轉為科學計數法形式。可傳入一個引數,引數表示小數點後有效數字的位數,範圍為0到20,超出這個範圍,會丟擲一個RangeError。
toPrecision()  //用於將一個數轉為指定位數的有效數字。

3.4 String 物件

(1)生成例項物件

var s = new String()

(2)String物件的屬性

s.length   //返回字串的長度

(3)方法

s.chatAt(index)   //返回指定位置的字元
s.fromCharCode()    //該方法的引數是一系列Unicode碼點,返回對應的字串。
s.charCodeAt(index)    //返回給定位置字元的Unicode碼點(十進位制表示)
s.concat(s2)  //用於連線兩個字串
s.slice(start,end)   //用於從原字串取出子字串並返回,不改變原字串。第一個引數是子字串的開始位置,第二個引數是子字串的結束位置(不含該位置)。如果引數是負值,表示從結尾開始倒數計算的位置,即該負值加上字串長度。
s.substring(start,end)  //用於從原字串取出子字串並返回,不改變原字串.第一個引數表示子字串的開始位置,第二個位置表示結束位置。
s.substr(start,length)   //用於從原字串取出子字串並返回,不改變原字串。第一個引數是子字串的開始位置,第二個引數是子字串的長度。如果第一個引數是負數,表示倒數計算的字元位置。如果第二個引數是負數,將被自動轉為0,因此會返回空字串。
s.indexOf(s)   //返回給定元素在字串中第一次出現的位置,如果沒有出現則返回-1。可以接受第二個引數,表示搜尋的開始位置 
s.lastIndexOf()  //返回給定元素在字串中最後一次出現的位置,如果沒有出現則返回-1。
s.trim()  //用於去除字串兩端的空格,返回一個新字串
s.toLowerCase()  //用於將一個字串全部轉為小寫,返回一個新字串,不改變原字串。
s.toUpperCase()  //全部轉為大寫
s.localeCompare(s2)  //用於比較兩個字串。它返回一個整數,如果小於0,表示第一個字串小於第二個字串;如果等於0,表示兩者相等;如果大於0,表示第一個字串大於第二個字串。
s.match(regexp)   //用於確定原字串是否匹配某個子字串,返回一個數組,成員為匹配的第一個字串。如果沒有找到匹配,則返回null。
s.search()  //返回值為匹配的第一個位置。如果沒有找到匹配,則返回-1。
s.replace(oldValue,newValue)  //用於替換匹配的子字串,一般情況下只替換第一個匹配(除非使用帶有g修飾符的正則表示式)。
s.split()  //按照給定規則分割字串,返回一個由分割出來的子字串組成的陣列。還可傳入第二個引數,決定了返回陣列的成員數。

3.5 Math物件

(1)屬性

Math.E:常數eMath.LN2:2的自然對數。  
Math.LN10:10的自然對數。  
Math.LOG2E:以2為底的e的對數。  
Math.LOG10E:以10為底的e的對數。  
Math.PI:常數PiMath.SQRT1_2:0.5的平方根。  
Math.SQRT2:2的平方根。

(2)數學方法

Math.abs():返回引數的絕對值  
Math.ceil():向上取整,接受一個引數,返回大於該引數的最小整數。 
Math.floor():向下取整  
Math.max(n,n1,...):可接受多個引數,返回最大值  
Math.min(n,n1,..):可接受多個引數,返回最小值  
Math.pow(n,e):指數運算, 返回以第一個引數為底數、第二個引數為冪的指數值。 
Math.sqrt():返回引數值的平方根。如果引數是一個負值,則返回NaNMath.log():返回以e為底的自然對數值。
Math.exp():返回e的指數,也就是常數e的引數次方。
Math.round():四捨五入  
Math.random():返回01之間的一個偽隨機數,可能等於
            
           

相關推薦

前端API 集錦

一、節點 1.1 節點屬性 Node.nodeName //返回節點名稱,只讀 Node.nodeType //返回節點型別的常數值,只讀 Node.nodeValue //返回Text或Comment節點的文字值,只讀 Node.textContent /

2018web前端牛的學習路線

前端 前端學習 前端工程師 前端框架 前端開發 第一章 初級課程 這個是我的前端新手學習群606加721加798,有全套的免費的學習資料,晚上也有365天講的前端免費公開課,想學習前端的朋友可以加群 第1天 html 1、HTTP協議 2、html是純文本 3、html骨架 4、DTD文檔

車道線檢測資料集錦

Summary:GitHub:車道線檢測最全資料集錦 Author:Amusi Date:2018-12-27 微信公眾號:CVer github:amusi/awesome-lane-detection 原文連結:GitHub:車道線檢測最全資料集錦 知乎:https://zh

Web前端面試寶典- Html篇

HTML 1.對WEB標準以及W3C的理解與認識 標籤閉合、標籤小寫、不亂巢狀、提高搜尋機器人搜尋機率、使用外 鏈css和js指令碼、結構行為表現的分離、檔案下載與頁面速度更快、內容能被更多的使用者所訪問、內容能被更廣泛的裝置所訪問、更少的程式碼和元件,容易維 護、改版方便,不需要變動頁面內容、提供列印版本

HTML5 視訊播放器 API

轉載地址:https://segmentfault.com/a/1190000000380064 前段時間重新學習了一下html5的video部分,以前只是停留在標籤的使用上,這一次決定深入瞭解相關的API,並運用這些API打造一個簡單的視訊播放器。所謂“打造自己的”,

前端寫README.MD的Markdown使用幫助

# 最全Markdown使用幫助 --------------------------- 撤銷:Ctrl/Command + Z 重做:Ctrl/Command + Y 加粗:Ctrl/Command + B 斜體:Ctrl/Command + I

IDEA 外掛集錦(史上系列)

工欲善其事必先利其器,一款好的開發工具不但能大大縮減我們編碼的時間,而且能使我們規範開發,還能秀出操作。本文將簡單介紹一些本人見識過的開發工具。 寫在前面:外掛查詢選單 >>>>> File->Settings->Plugins,並

[轉] webpack之前端效能優化(史上,不斷更新中。。。)

最近在用webpack優化首屏載入效能,通過幾種外掛之後我們上線前後的速度快了一倍,在此就簡單的分享下吧,先上個優化前後首屏渲染的對比圖。 可以看到總下載時間從3800ms縮短到1600ms。 我們在用webpack時一般都會選擇多入口檔案吧,為的就是將自己的原始碼跟第三方庫程式碼分離。這是之前的程式

前端資源彙總

最近小熙在學習Vue,所以就查了些前端資料,恰好看到一篇非常詳細的導航,特此轉載,希望能幫助到大家。 一、概要 這份彙總整理,很程度上參考了GitHub最全前端資源彙總;雲集前端教程、開發資源、免費書籍、手冊規範、求職面試等等,旨在為前端學習 & 技能提升提供方便。當然,並不

有史以來最好的web前端學習資料

一定要善用開發者工具。firefox的firebug和Chrome的F12都是很好的選擇,用好了這個必會發現他帶給你的幫助比看一本書更多。你把firebug摸透了你還擔心對DOM理解不夠?考慮到未來,html5和css3是必須學習的。看這篇總結的最全學習資料,助你學好前端 分享之前我還是要推薦下

WEB前端之網頁設計⑤----最新詳解/CSS層疊樣式表

WEB前端之網頁設計⑤—-最新最全詳解/CSS層疊樣式表 簡介:CSS層疊樣式表可以簡化網頁的格式程式碼,外部樣式表還會被瀏覽器儲存在快取里加速了下載顯示的速度,也減少了需要上傳的程式碼數量,總而言是非常的實用。 一、程式碼塊: <!doctyp

前端開發資源彙集

前些日子從@張鑫旭微博處得一份推薦(Front-end-tutorial),號稱 最全的資源教程 -前端涉及的所有知識體系;有粗略檢視,果然“歎為觀止”,至少比想象中涉獵豐富許多;果斷有Fork了來:Front-end-tutorial;本就有收藏&分享欲,這種事兒早期也想做了,勘嘆

新手必看,史上的iOS開發教程集錦,沒有之一!

最近大火的iPhone XS Max和iPhone XS,不知道有沒有同學已經下手了呢?一萬三的價位確實讓很多人望而卻步啊。據說為了贏得中國的使用者,專門出了雙卡雙待的,可想而知中國市場這塊“肥肉”人人都想要。 近幾年,無論蘋果出什麼樣的產品以及多高的價位,都會有非常多的蘋

前端資源教程

Javascript UI CSS HTML Angular React Vue Node Gulp 其他 分享功能 線上演示 富文字編輯器 Chrome 效能優化 CDN Git Sass&Less Article Arti

我推薦一個2018年 前端學習路線圖,請收藏

「 BB」昨天,北媽發了一些Vue的概念普及和元件推薦,貌似很受歡迎,但留言互動量卻不多,可能大

Android SDK版本和API Level對照表(最新

在開發時我們會經常用到相容api版本,難保可用把全部都記得住,這裡有最快捷實用的方法進行檢視:開啟Android Studio ,然後點選SDK Manneger ,參考下圖示例: 下面列出最

史上面的web前端學習資源

1.為什麼我會整理這個資源前段時間,好多朋友私信我,問我有沒有什麼好的前端學習資源,好多小夥伴學習的東西比較雜,所以我就花了一段時間吧比較經典的學習資源整理分享給大家,在我看來這是目前為止比較全面的前端學習資源,裡面的資源大部分是乾貨,希望大家能完完整整看完一個系列教程,都能

前端】ajax跨域,這應該是的解決方案了

原文出處: 撒網要見魚    前言 從剛接觸前端開發起,跨域這個詞就一直以很高的頻率在身邊重複出現,一直到現在,已經除錯過N個跨域相關的問題了,16年時也整理過一篇相關文章,但是感覺還是差了點什麼,於是現在重新梳理了一下。 個人見識有限,如有差錯,請多多見諒,歡迎提出i

史上前端開發面試問題及答案整理

說說你對閉包的理解 使用閉包主要是為了設計私有的方法和變數。閉包的優點是可以避免全域性變數的汙染,缺點是閉包會常駐記憶體,會增大記憶體使用量,使用不當很容易造成記憶體洩露。 閉包有三個特性: 1.函式巢狀函式 2.函式內部可以引用外部的引數和

2018最新Web前端經典面試試題及答案-史上前端面試題(含答案)

近期總結一一些面試題 都是企業的面試題筆記題感覺薪資10k下的都會出筆試題   特別高的薪資都是直接技術面試或者是 現場程式設計 總結很多人的面試題,後期會對於單個知識點再說筆記詳細講解。部分都是百度的答案,不是特全面的,可以自己找下紅色為常見面試題=============