摘要:系統(tǒng)內(nèi)部會(huì)自動(dòng)調(diào)用函數(shù)。因此除了以下五個(gè)值,其他都是自動(dòng)轉(zhuǎn)為??兆址詣?dòng)轉(zhuǎn)換為字符串遇到預(yù)期為字符串的地方,就會(huì)將非字符串的值自動(dòng)轉(zhuǎn)為字符串。字符串的自動(dòng)轉(zhuǎn)換,主要發(fā)生在字符串的加法運(yùn)算時(shí)。
URL后面#號(hào)是代表什么?
# 代表頁(yè)面中的某個(gè)位置,也稱為地址hash值
#XX 作用當(dāng)前可視區(qū)域移動(dòng)到頁(yè)面xx位置
# 僅對(duì)瀏覽器起作用,對(duì)服務(wù)器無(wú)用,所以HTTP請(qǐng)求不包括#(#之后的字符都不會(huì)被發(fā)送到服務(wù)器端。)
改變#不觸發(fā)網(wǎng)頁(yè)重載
改變#會(huì)改變?yōu)g覽器的訪問(wèn)歷史
如何獲取URL中#號(hào)的值?使用window.location.hash這個(gè)屬性可讀可寫
如何監(jiān)聽URL中#號(hào)值的變化onhashchange事件(IE8+、Firefox 3.6+、Chrome 5+、Safari 4.0+支持該事件。)
window.addEventListener("hashchange", function(){ var hash = window.location.hash.slice(1); });瀏覽器中的localStorage如何存???
localStorage存值
localStorage.setItem(key,val);
localStorage取值
var data = localStorage.getItem(key);傳統(tǒng)表單提交前的數(shù)據(jù)校驗(yàn)如何實(shí)現(xiàn)?
使用表單提交事件onSubmit,返回ture,表單繼續(xù)提交,返回false,表單終止提交
function userEdit() { var frm = document.forms["formEdit"]; var email = frm.elements["email"].value; var msg = ""; var reg = null; var passwd_answer = frm.elements["passwd_answer"] ? Utils.trim(frm.elements["passwd_answer"].value) : ""; var sel_question = frm.elements["sel_question"] ? Utils.trim(frm.elements["sel_question"].value) : ""; if (email.length == 0) { msg += email_empty + " "; } else { if ( ! (Utils.isEmail(email))) { msg += email_error + " "; } } if (passwd_answer.length > 0 && sel_question == 0 || document.getElementById("passwd_quesetion") && passwd_answer.length == 0) { msg += no_select_question + " "; } for (i = 7; i < frm.elements.length - 2; i++) // 從第七項(xiàng)開始循環(huán)檢查是否為必填項(xiàng) { needinput = document.getElementById(frm.elements[i].name + "i") ? document.getElementById(frm.elements[i].name + "i") : ""; if (needinput != "" && frm.elements[i].value.length == 0) { msg += "- " + needinput.innerHTML + msg_blank + " "; } } if (msg.length > 0) { alert(msg); return false; } else { return true; } }數(shù)據(jù)類型轉(zhuǎn)換規(guī)則
自動(dòng)轉(zhuǎn)換為布爾值
JavaScript 遇到預(yù)期為布爾值的地方(比如if語(yǔ)句的條件部分),就會(huì)將非布爾值的參數(shù)自動(dòng)轉(zhuǎn)換為布爾值。系統(tǒng)內(nèi)部會(huì)自動(dòng)調(diào)用Boolean函數(shù)。
因此除了以下五個(gè)值,其他都是自動(dòng)轉(zhuǎn)為true。
undefined null 0 NaN ""(空字符串)
自動(dòng)轉(zhuǎn)換為字符串
JavaScript 遇到預(yù)期為字符串的地方,就會(huì)將非字符串的值自動(dòng)轉(zhuǎn)為字符串。具體規(guī)則是,先將復(fù)合類型的值轉(zhuǎn)為原始類型的值,再將原始類型的值轉(zhuǎn)為字符串。
字符串的自動(dòng)轉(zhuǎn)換,主要發(fā)生在字符串的加法運(yùn)算時(shí)。當(dāng)一個(gè)值為字符串,另一個(gè)值為非字符串,則后者轉(zhuǎn)為字符串。
"5" + 1 // "51" "5" + true // "5true" "5" + false // "5false" "5" + {} // "5[object Object]" "5" + {a:12} // "5[object Object]" "5" + [] // "5" "5" + [1,2] // "51,2" "5" + function (){} // "5function (){}" "5" + undefined // "5undefined" "5" + null // "5null"
自動(dòng)轉(zhuǎn)換為數(shù)值
JavaScript 遇到預(yù)期為數(shù)值的地方,就會(huì)將參數(shù)值自動(dòng)轉(zhuǎn)換為數(shù)值。系統(tǒng)內(nèi)部會(huì)自動(dòng)調(diào)用Number函數(shù)。
除了加法運(yùn)算符(+)有可能把運(yùn)算子轉(zhuǎn)為字符串,其他運(yùn)算符都會(huì)把運(yùn)算子自動(dòng)轉(zhuǎn)成數(shù)值。
"5" - "2" // 3 "5" * "2" // 10 true + 3 // 4 true - 1 // 0 false - 1 // -1 "1" - 1 // 0 "5" * [] // 0 false / "5" // 0 "abc" - 1 // NaN null + 1 // 1 undefined + 1 // NaN // 對(duì)象 -> NaN // 數(shù)組 1、空數(shù)組 -> 0 2、只有一個(gè)元素?cái)?shù)組(數(shù)值) -> 數(shù)值 3、只有一個(gè)元素?cái)?shù)組(數(shù)值字符串) -> 數(shù)值 4、多個(gè)元素?cái)?shù)組 -> NaN // 函數(shù) -> NaN
注意:null 轉(zhuǎn)為數(shù)值時(shí)為 0,而 undefined 轉(zhuǎn)為數(shù)值時(shí)為 NaN。比較運(yùn)算(==) - 數(shù)據(jù)類型轉(zhuǎn)換
記住特例:
null == underfined (true)
null == null (true)
underfined == underfined (true)
NaN == NaN (false)
除了上面這2種要記住,只有存在null、underfined、NaN其中一個(gè),比較都是返回fasle
==兩邊值類型相同時(shí),無(wú)需轉(zhuǎn)換,不同時(shí),自動(dòng)轉(zhuǎn)換(全轉(zhuǎn)成數(shù)值類型)
// 當(dāng)比較的數(shù)據(jù)類型相同時(shí) Number / String / Boolean ---> true 對(duì)象 / 數(shù)組 / 函數(shù) ---> false null / underfined ---> true // 當(dāng)比較的數(shù)據(jù)類型不相同時(shí)(轉(zhuǎn)成數(shù)值類型Number) 一邊是Number / String / Boolean,另一邊是null / underfined 都為falseJS數(shù)組也可以存非數(shù)值Key
最開始認(rèn)識(shí)的JS數(shù)組
var arr = ["234",123,{"name":"xiaoming"},ture]; // 修改 arr[0]="Opel";
最后發(fā)現(xiàn)JS數(shù)組也可以像PHP數(shù)組一樣,可以存key
var array = new Array(); array["first"] = "my"; array["second"] = "name"; array["third"] = "is"; var arr = []; arr["first"] = "my"; arr["second"] = "name"; arr["third"] = "is"; // 打印出數(shù)組:["first":"my","second":"name","third":"is"] // 使用如下: array["first"]
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/88339.html
摘要:后端和移動(dòng)性能優(yōu)化需要的時(shí)間較長(zhǎng),出成果較慢。大型網(wǎng)站上,一般通過(guò)什么方式監(jiān)控性能的用戶端主要是真機(jī)監(jiān)測(cè)監(jiān)測(cè),都屬于真實(shí)用戶監(jiān)測(cè)。目前主要有以下兩種類型,,最終用戶性能監(jiān)測(cè)。,,真實(shí)用戶性能監(jiān)測(cè)。 showImg(https://segmentfault.com/img/bVAbWm);@tanwen110 (唐文),曾負(fù)責(zé)騰訊四大平臺(tái)之一網(wǎng)絡(luò)媒體平臺(tái)的整體運(yùn)維、運(yùn)營(yíng)規(guī)劃工作;曾任百度...
摘要:主要特性模板渲染響應(yīng)式雙向數(shù)據(jù)綁定組件化開發(fā)路由虛擬好處初始視圖沒有優(yōu)勢(shì),反而中間多了一層虛擬,所以性能沒有提高更新視圖優(yōu)勢(shì)明顯減少重復(fù)生成與刪除操作,減少查詢定位元素的操作,能修改操作完成的就絕不使用生成與刪除來(lái)操作腳手架是什么有什么作 vuejs主要特性? 模板渲染 響應(yīng)式雙向數(shù)據(jù)綁定 組件化開發(fā) 路由 虛擬DOM好處? 初始視圖沒有優(yōu)勢(shì),反而中間多了一層虛擬DOM,所以性能...
什么是樹 現(xiàn)實(shí)中樹隨處可見;在計(jì)算機(jī)世界,樹就是一種分層結(jié)構(gòu)的抽象模型?! ∪缦聢D所示: 樹結(jié)構(gòu)的可以用在很多情景,就如下圖公司的組織架構(gòu),用樹就可以表達(dá)出來(lái),如下圖: 組織架構(gòu)只是其中之一,比如族譜、省市等用樹的結(jié)構(gòu)形式展現(xiàn)是完全可以?! 涞男g(shù)語(yǔ) 樹有很多的術(shù)語(yǔ),如下圖: 樹:n(n≥0)個(gè)節(jié)點(diǎn)所構(gòu)成的有限集合,當(dāng)n=0時(shí),稱為空樹; 節(jié)點(diǎn)的度:節(jié)點(diǎn)的子樹個(gè)數(shù),例如B節(jié)點(diǎn)的度就...
摘要:基礎(chǔ)原型原型鏈構(gòu)造函數(shù)默認(rèn)有這一行張三李四構(gòu)造函數(shù)擴(kuò)展其實(shí)是的語(yǔ)法糖其實(shí)是的語(yǔ)法糖其實(shí)是使用判斷一個(gè)函數(shù)是否是一個(gè)變量的構(gòu)造函數(shù)原型規(guī)則和示例所有的引用類型數(shù)組對(duì)象函數(shù),都具有對(duì)象屬性即可自有擴(kuò)展的屬性,除外所有的引用類型數(shù)組對(duì)象函數(shù), JavaScript基礎(chǔ) —— 原型&&原型鏈 構(gòu)造函數(shù) function Foo(name, age) { this.name = na...
我們說(shuō)下想要實(shí)現(xiàn),一副牌里有54張,我們可以知道 3 - 2 的牌總共有13張,這分為4個(gè)花色是 ?? ?? ?? ?? 另外加上2個(gè)大小王!第一步:形成一個(gè)數(shù)組, 就要寫一個(gè)函數(shù),利用牌數(shù)量和花色,這樣可以用來(lái)形成一個(gè)雙重循環(huán)將 number 里面的內(nèi)容 和 flower 里面的內(nèi)容 進(jìn)行一個(gè)循環(huán)嵌入?最后在用 push 生成一個(gè)對(duì)象放到數(shù)組的后面?再到最后放入 大小王 ?! onstnu...
閱讀 1314·2021-11-08 13:25
閱讀 1511·2021-10-13 09:40
閱讀 2825·2021-09-28 09:35
閱讀 796·2021-09-23 11:54
閱讀 1213·2021-09-02 15:11
閱讀 2488·2019-08-30 13:18
閱讀 1732·2019-08-30 12:51
閱讀 2747·2019-08-29 18:39