摘要:類型裝換轉(zhuǎn)為數(shù)字類型會(huì)試圖將字符串轉(zhuǎn)為整型如果失敗返回如果前面是空格數(shù)字正負(fù)號(hào)時(shí),當(dāng)碰到第一個(gè)不是數(shù)字時(shí)停止裝換如果不是數(shù)字空格直接返回與沒(méi)有太大區(qū)別除了以下幾條轉(zhuǎn)為類型轉(zhuǎn)為類型在瀏覽器控制臺(tái)中字符類型是黑色的數(shù)字是藍(lán)色的其他類型轉(zhuǎn)
1.類型裝換 1.1 轉(zhuǎn)為數(shù)字類型
// Number console.log(Number(undefined)); //NaN console.log(Number(null)); //0 console.log(Number(true)); // 1 console.log(Number(false)); // 0 console.log(Number("123")); //123 console.log(Number("123a")); //NaN console.log(Number("1.23")); // 1.23 console.log(Number("+123")); //123 console.log(Number("-123")); // -123 console.log(Number("1+23")) // NaN console.log(Number("")); // 0 console.log(Number(" ")); // 0 console.log(Number("1 23"));// NaN console.log(Number("1$%23")); // NaN console.log(Number(" 123")); //123 console.log(Number("1.2.3")); // NaN console.log(Number(".23")); // 0.23 / parseInt() 會(huì)試圖將字符串轉(zhuǎn)為整型,如果失敗 返回NaN // 如果前面是空格 數(shù)字正負(fù)號(hào)時(shí), 當(dāng)碰到 第一個(gè)不是數(shù)字時(shí)停止裝換 // 如果不是數(shù)字空格直接返回NaN console.log(parseInt(undefined)); //NaN console.log(parseInt(null)); // NaN console.log(parseInt(true)); // NaN console.log(parseInt(false)); // NaN console.log(parseInt("123")); //123 console.log(parseInt("123a")); // 123 console.log(parseInt("1.23")); // 1 console.log(parseInt("+123")); //123 console.log(parseInt("-123")); // -123 console.log(parseInt("1+23")) // 1 console.log(parseInt("")); // NaN console.log(parseInt(" ")); // NaN console.log(parseInt("1 23"));// 1 console.log(parseInt("1$%23")); // 1 console.log(parseInt(" 123")); //123 console.log(parseInt("1.2.3")); // 1 console.log(parseInt(".123")) //NaN // parseFloat 與parseInt沒(méi)有太大區(qū)別 除了以下幾條 console.log(parseFloat("1.23")); // 1.23 console.log(parseFloat("1.2.3")); // 1.2 console.log(parseFloat(".123")) // 0.1231.2 轉(zhuǎn)為String 類型
// undefined null boolean 轉(zhuǎn)為String類型 var a = undefined + ""; console.log(typeof a); // string var b = null + ""; console.log(typeof b); // string var c = true.toString(); console.log(typeof c); var num = 20; var d = num.toString(); console.log(d); //在瀏覽器控制臺(tái)中字符類型是黑色的 數(shù)字是藍(lán)色的1.3 其他類型轉(zhuǎn)為Boolean類型
console.log(Boolean("")); //false console.log(Boolean(undefined)); //false console.log(Boolean(null)); //false console.log(Boolean(0)); //false console.log(Boolean(0.0)); // false console.log(Boolean(NaN)); // false console.log(Boolean(" ")); // true console.log(Boolean(1)); // true console.log(Boolean("abc")); // true2.isNaN and isFinite
console.log(isNaN(NaN)); //true console.log(isNaN("NaN")); //true console.log(isNaN(123)); // false // isFinite: 判斷既不是NaN類型 也不是InFinite類型 console.log(isFinite(123)) //true console.log(isFinite(NaN)); //false console.log(isFinite(Infinity)); //false console.log(isFinite(" ")) // true console.log(isFinite("123 ")) // true console.log(isFinite("123abc")) // false3.條件語(yǔ)句
if 語(yǔ)句
三目運(yùn)算符 res = a>b?true:false (運(yùn)行效率比if語(yǔ)句高)
switch語(yǔ)句
default break 都是可選語(yǔ)句了,當(dāng)case后面沒(méi)有break語(yǔ)句時(shí),如果條件匹配成功,直接貫穿所有case語(yǔ)句,直到執(zhí)行break語(yǔ)句
4.循環(huán)語(yǔ)句while
do while
for
for(var i = 0; i < array.lenght; i++)
for(var i in array) // i 是下標(biāo)
for(var i of array) // i 是元素
// js中循環(huán)是可以有名字的 // 語(yǔ)法格式 名稱:循環(huán)語(yǔ)句 //break continue 可以跳過(guò)或終止 帶有標(biāo)簽名的循環(huán) label1 : for(var i = 0; i < 10; i++){ label2 : for(var j = 0; j < 10; j++){ if(j == 3){ break label1; } console.log(i + " " + j); } }6.函數(shù) 6.1 函數(shù)的概述
函數(shù)名:建議使用駝峰規(guī)則
如果不寫(xiě)return 系統(tǒng)默認(rèn) 返回undefined
函數(shù)在調(diào)用時(shí)只要有該函數(shù)的聲明即可
function info(name, age) { document.write(name); document.write(age); } info("lily", "9"); // lily 9 info("lily"); // lily undefined info("lily","9","c","d") // lily 9 // Js不定長(zhǎng)參數(shù) function printSum(){ sum = 0; for(i in arguments) sum += arguments[i]; return sum } console.log(printSum(1,2,3))6.3 作用域
新的作用域:函數(shù)會(huì)產(chǎn)生新的作用域,循環(huán),條件語(yǔ)句不會(huì)產(chǎn)生新的作用域6.4 變量的提升變量作用域
全局變量:定在文件中,但在函數(shù)外的變量為全局變量,使用范圍為整個(gè)文件的任意位置局部變量:在函數(shù)內(nèi)部使用var聲明的變量為局部變量,使用范圍為該函數(shù)內(nèi)部
var num = 100; /* * 在js中如果函數(shù)內(nèi)部使用var聲明變量時(shí),在代碼執(zhí)行過(guò)程中,系統(tǒng) * 會(huì)自動(dòng)把變量的聲明語(yǔ)句(var )提到函數(shù)的最上方,這個(gè)操作叫做變量的提升 * */ function fun1 () { console.log(num); // undefined num = num +1 console.log(num); // NaN undefined + 1 = NaN var num = 200 console.log(num); // 200 } fun1();6.5 參數(shù)默認(rèn)值
// 定義一個(gè)函數(shù),該函數(shù)有兩個(gè)參數(shù) // 參數(shù)的默認(rèn)值 // 第一種方式: 在定義形參時(shí),直接賦值 // 第二種方式: a = a||555; // 第三種方式: a = a ? a : 333 function func2(a, b=999){ // a = a||555; a = a ? a : 333 console.log(a); console.log(b); } func2(1,2); func2(4); func2();6.6 匿名函數(shù)
// 非即時(shí)函數(shù) var a = function(num){ console.log(num); }; a(1233); // 即時(shí)函數(shù) (function(num){ console.log(num); })(666); // 一般來(lái)說(shuō),匿名函數(shù)當(dāng)做一次性函數(shù)使用,調(diào)用一次結(jié)束后, // 一般情況下會(huì)把匿名函數(shù)作為即時(shí)函數(shù),但是任何函數(shù)都可以 // 即時(shí)執(zhí)行 // 普通函數(shù)形式的即時(shí)函數(shù) /*(function abc(){ alert("123") })();*/
Javascript ECMA-3 (數(shù)組,Date,正則)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/95017.html
摘要:基礎(chǔ)建議一般情況下不在標(biāo)簽中寫(xiě)語(yǔ)句,因?yàn)樵撜Z(yǔ)句會(huì)在加載之前就執(zhí)行,可能導(dǎo)致某些效果無(wú)效單行注釋多行注釋控制臺(tái)輸出語(yǔ)句瀏覽器的提示框這是一個(gè)提示框頁(yè)面展示數(shù)據(jù)類型一基本數(shù)據(jù)類型數(shù)字類型整型浮點(diǎn)型不是一個(gè)數(shù)字不能處理的數(shù)字字符串,使用單引號(hào)或雙 1.js基礎(chǔ) 建議:一般情況下不在head標(biāo)簽中寫(xiě)js語(yǔ)句,因?yàn)樵搄s語(yǔ)句會(huì)在body加載之前就執(zhí)行,可能導(dǎo)致某些效果無(wú)效 // 單行注釋 /*多...
摘要:一彈窗和輸出執(zhí)行順序是從上到下執(zhí)行控制瀏覽器彈出一個(gè)警告框讓計(jì)算機(jī)在頁(yè)面中輸出一個(gè)內(nèi)容在中寫(xiě)一個(gè)內(nèi)容寫(xiě)可以向中輸出一個(gè)內(nèi)容看我出不出來(lái)向控制臺(tái)輸出一個(gè)內(nèi)容作用是向控制臺(tái)輸出一個(gè)內(nèi)容你猜我在哪出來(lái)二編寫(xiě)位置可以將代碼編寫(xiě)到外部文件中,然后通過(guò) 一.彈窗和輸出 **javascript執(zhí)行順序是從上到下執(zhí)行** 1.控制瀏覽器彈出一個(gè)警告框 alert(HelloWord); 2.讓計(jì)...
摘要:插入迭代器如前面兩條語(yǔ)句可以寫(xiě)成使用直接量替換為替換為替換為如果要?jiǎng)?chuàng)建具有一些特性的一般對(duì)象,也可以使用字面量,如下前面的代碼可用對(duì)象字面量來(lái)改寫(xiě)成這樣使用優(yōu)化多次一旦需要更新請(qǐng)考慮使用文檔碎片來(lái)構(gòu)建結(jié)構(gòu),然后再將其添加到現(xiàn)存的文檔中。 好贊,收藏自 總結(jié)的js性能優(yōu)化方面的小知識(shí)(不喜勿噴) 前言 一直在學(xué)習(xí)javascript,也有看過(guò)《犀利開(kāi)發(fā)Jquery內(nèi)核詳解與實(shí)踐》,對(duì)...
摘要:基礎(chǔ)標(biāo)識(shí)符所謂的標(biāo)識(shí)符就是指變量函數(shù)屬性的名字,或者函數(shù)的參數(shù)。原始數(shù)組不會(huì)被改變。刪除或替換現(xiàn)有元素來(lái)修改數(shù)組并以數(shù)組形式返回被修改的內(nèi)容。否則返回返回在數(shù)組中可以找到一個(gè)給定元素的第一個(gè)索引,如果不存在,則返回。 Javascript基礎(chǔ) 標(biāo)識(shí)符 所謂的標(biāo)識(shí)符,就是指變量、函數(shù)、屬性的名字,或者函數(shù)的參數(shù)。標(biāo)識(shí)符主要有以下規(guī)則: 首字符必須是字母、下劃線_或者美元符$ 其他字符可...
摘要:復(fù)習(xí)基礎(chǔ)到底是什么的應(yīng)用場(chǎng)合極其廣泛。常量不可以通過(guò)重新賦值改變其值,也不可以在代碼運(yùn)行時(shí)重新聲明。布爾對(duì)象是原始布爾數(shù)據(jù)類型的一個(gè)包裝器整數(shù)整數(shù)可以用十進(jìn)制基數(shù)為十六進(jìn)制基數(shù)為八進(jìn)制基數(shù)為以及二進(jìn)制基數(shù)為表示。 復(fù)習(xí)js day1 js基礎(chǔ) JavaScript 到底是什么 JavaScript 的應(yīng)用場(chǎng)合極其廣泛。簡(jiǎn)單到幻燈片、照片庫(kù)、浮動(dòng)布局和響應(yīng)按鈕點(diǎn)擊。復(fù)雜到游戲、2D 和 ...
閱讀 3760·2021-11-22 15:24
閱讀 1682·2021-09-26 09:46
閱讀 1981·2021-09-14 18:01
閱讀 2688·2019-08-30 15:45
閱讀 3582·2019-08-30 14:23
閱讀 1954·2019-08-30 12:43
閱讀 3010·2019-08-30 10:56
閱讀 874·2019-08-29 12:20