Day6 js基礎2

01.js引入方式和打印方式

02.函數(shù)

03.數(shù)組

04.對象

05.常用對象和函數(shù)

06.js簡單演示

07.獲取對象

08.常用事件

09.獲取掖鱼、設置屬性和內(nèi)容


01.js引入方式和打印方式

四種引入方式

(1)<a href="javascript:alert('集合藕届,準備團戰(zhàn)')">百度一下</a>
(2)<div style="width:200px; height:200px; background-color:red" onclick="alert('等等我抗楔,馬上到')"></div>
(3)在html頁面的任何位置加入 <script>js代碼</script>
(4)在html頁面的任何位置加入 <script src='js.js'></script>

三種打印方式

(1)alert彈窗打印
(2)console.log('打印的內(nèi)容') 結合瀏覽器控制臺查看
(3)document.write('打印的內(nèi)容') 往html文檔中寫內(nèi)容

<a href="javascript:alert('集合伐割,準備團戰(zhàn)')">百度一下</a>
    <div style="width:200px; height:200px; background-color:red" onclick="alert('等等我忌穿,馬上到')"></div>
alert('猥瑣發(fā)育莫辨,別浪')
       document.write('<b>注意傲茄,我來抓人了</b>')

02.函數(shù)

全局變量和局部變量

  • 全局變量:直接定義的變量,全局有效
    加var和不加var都一樣
  • 局部變量:函數(shù)體內(nèi)定義的變量沮榜,只在函數(shù)體內(nèi)有效
  • 如果局部前面有var盘榨,該變量真是一個局部變量
  • 如果局部前面沒有var,該變量其實是一個全局變量蟆融,在函數(shù)調用之后草巡,該變量即可隨便使用
    上面知道即可,一般情況定義變量都加var,如果局部和全局同名型酥,優(yōu)先使用局部變量

匿名函數(shù)
沒有函數(shù)名的函數(shù)山憨,需要將其賦給一個變量查乒,然后變量按照函數(shù)的形式進行調用即可
封閉空間
將匿名函數(shù)用小括號括起來,然后在后面再加一個小括號調用這個匿名函數(shù)郁竟,稱之為封閉空間

var m = 100
    var n = 200

    function demo() {
        // var m
        // var n
        var m = 300
        var n = 400
        console.log(m, n)
    }

    demo()
    console.log(m, n)
function add(m, n) {
        return m + n
    }
    function sub(m, n) {
        return m - n
    }

    function cacl(m, n, fn) {
        return fn(m, n)
    }

    // alert(cacl(100, 200, sub))
    alert(cacl(100, 200, function (m, n) {
        return m * n
    }))

03.數(shù)組

定義:array
遍歷:

數(shù)組定義通過索引進行訪問玛迄,索引從0開始
但是數(shù)組也可以通過屬性值追加屬性和值,但是一般不這么使用
遍歷的時候棚亩,通過for進行遍歷只能遍歷索引數(shù)組蓖议,通過for-in進行遍歷,既可以遍歷索引蔑舞,又可以遍歷屬性
字符串遍歷
通過索引進行遍歷拒担,索引從0開始

string1 = '12345,上山打老虎'
for (var i = 0; i < string1.length; i++) {
    console.log(string1[i])
}

04.對象

三種方式:
(1)構造方法
(2)通過官方創(chuàng)建
(3)直接寫一個對象即可

        obj = {name: '王寶強', age: '36', wife: '馬蓉蓉'}

屬性的引號可以添加也可以不添加,一般就不加了
使用時候

        obj['name']   或者  obj.name

在js中json格式字符串和js對象相互轉化的函數(shù)
將js對象轉化為json字符串

        string = JSON.stringify(obj)

json字符串轉化為js對象

        obj = JSON.parse(string)
        obj = eval('(' + string + ')')

05.常用對象和函數(shù)

parseInt

  • 將字符串轉化為整型攻询,必須以數(shù)字開頭从撼,只要碰到非數(shù)字钧栖,轉化結束
  • 如果以非數(shù)字開頭低零,轉化為NaN, 兩個NaN不能判斷是否相等,判斷是不是NaN可以使用 isNaN函數(shù) 判斷是不是NaN拯杠,是返回true掏婶,不是返回false
    parseFloat
  • 將字符串轉化為浮點,必須以數(shù)字開頭,碰到非數(shù)字立馬結束潭陪,小數(shù)點不算
  • 如果以非數(shù)字開頭雄妥,轉為NaN
    Math對象

abs : 絕對值函數(shù)
ceil : 向上取整
floor : 向下取整
max : 取最大的值,傳遞過個參數(shù),找到最大值
min : 傳遞多個參數(shù)依溯,找到最小值
pow : 求冪
random : 隨機值 只能隨機0-1之間的小數(shù)老厌,如果需要隨機5-10之間的數(shù),自己實現(xiàn)
round : 四舍五入函數(shù)

字符串常用函數(shù)

indexOf : 字符串查找函數(shù)黎炉,返回查找到的字符串的第一個字母的下標枝秤,如果找不到,返回-1 類似于python里面的find
lastIndexOf : 字符串查找函數(shù)慷嗜,找最后一次出現(xiàn)的位置淀弹,找不到返回-1,類似于python里面的rfind
substr : 字符串的提取 substr(start, length) 從start開始提取length個字符
replace : 字符串替換,只能替換第一個 string.replace(old, new)
toLowerCase : 全部轉化為小寫
toUpperCase : 全部轉化為大寫
fromCharCode : 所有的大寫 65-90 所有的小寫 97-122 數(shù)字 48-57
split : 按照特定的字符進行切割

數(shù)組常用函數(shù)

push : 給數(shù)組追加一個元素
pop : 彈出最后一個元素,只能這么做
shift : 彈出數(shù)組中第一個元素
unshift : 數(shù)組最前面添加一個元素
join : 字符串拼接 arr.join('*') 將列表里面所有的字符串按照 * 拼接
reverse : 將數(shù)組逆序
slice : slice(start, end) [start, end) 左閉右開
sort : 排序,如果都是數(shù)字庆械,默認按照數(shù)字的ascii進行排序薇溃,如果想按照數(shù)字大小排序
arr.sort(function (a, b) {return a > b}) 從小到大排序

日期對象常用函數(shù)

getDate : 獲得日期
getDay : 獲得星期幾 0-6 0表示周天
getMonth : 0-11 當前月份減一
getFullYear : 得到年份
getHours : 得到小時 24小時進制
getMinutes : 得到分鐘數(shù)
getSeconds : 得到秒數(shù)
getTime : 時間戳,毫秒數(shù)

  • 每一個都有對應的設置方法缭乘,自己看看
        創(chuàng)建日期對象的方式
        // 創(chuàng)建當前時間的時間對象
        d = new Date()
        // 根據(jù)指定的時間戳創(chuàng)建時間對象
        d = new Date(1534750144520)
        // 根據(jù)時間字符串創(chuàng)建時間對象
        d = new Date('2018/8/20 15:29:04')
        // 根據(jù)年月日時分秒值創(chuàng)建對象
        d = new Date(2018, 7, 20, 15, 29, 4)

06.js簡單演示

  • 背景切換

    核心:頁碼中有一個標簽痊焊,如果想給標簽添加點擊事件,只需要寫onclick,如果想添加其它的薄啥,添加對應事件即可辕羽。在事件的后面就要寫代碼,通過js的DOM操作找到指定節(jié)點垄惧,將節(jié)點的屬性修改即可

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>測試</title>
    <link id="lk" rel="stylesheet" href="yellow.css">
</head>
<body>
    <button onclick="document.getElementById('lk').href = 'red.css'">點我變成紅色</button>
    <button onclick="document.getElementById('lk').href = 'yellow.css'">點我變成黃色</button>
</body>
</html>



6刁愿、獲取對象
DOM操作

document object mxxx, 文檔操作,document就是整個文檔對象
document.getElementById 得到指定對象
document.getElementsByClassName 得到對象集合到逊,符合類名要求的都可以得到
document.getElementsByName
document.getElementsByTagName 得到對象集合

7宙攻、常用事件

onmouseover :鼠標移動上去觸發(fā)
onmouseout : 鼠標離開的時候觸發(fā)
onmouseup : 鼠標按下松開的時候觸發(fā)
onmousedown : 鼠標按下的時候觸發(fā)
onmousemove : 鼠標移動的時候觸發(fā)
onclick : 點擊的時候觸發(fā)
ondblclick : 雙擊的時候觸發(fā)
如下兩個用在input框中
onblur : 失去焦點
onfocus : 獲取焦點

8译仗、獲取捏题、設置屬性和內(nèi)容
獲取屬性

odiv.id
odiv.className
odiv.style.width
odiv.style.height
odiv.style.backgroundColor

【注】在css中帶杠的屬性缝裤,到js中都修改為小駝峰即可
獲取內(nèi)容

odiv.innerHTML 獲取標簽里面的所有文本內(nèi)容,帶標簽
odiv.innerText 獲取標簽里面的純文本內(nèi)容

點和中括號區(qū)別:
能使用點的地方肯定能使用中括號铜靶,能使用中括號的地方不一定能使用點
點后面只能跟屬性名
中括號里面可以寫屬性名字符串叔遂,也可以寫變量
顯示隱藏圖片
this使用
切換背景色
表單內(nèi)容控制

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市争剿,隨后出現(xiàn)的幾起案子已艰,更是在濱河造成了極大的恐慌,老刑警劉巖蚕苇,帶你破解...
    沈念sama閱讀 206,013評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件哩掺,死亡現(xiàn)場離奇詭異,居然都是意外死亡涩笤,警方通過查閱死者的電腦和手機嚼吞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蹬碧,“玉大人舱禽,你說我怎么就攤上這事∶誊裕” “怎么了?”我有些...
    開封第一講書人閱讀 152,370評論 0 342
  • 文/不壞的土叔 我叫張陵切心,是天一觀的道長飒筑。 經(jīng)常有香客問我,道長绽昏,這世上最難降的妖魔是什么协屡? 我笑而不...
    開封第一講書人閱讀 55,168評論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮全谤,結果婚禮上肤晓,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好补憾,可當我...
    茶點故事閱讀 64,153評論 5 371
  • 文/花漫 我一把揭開白布漫萄。 她就那樣靜靜地躺著,像睡著了一般盈匾。 火紅的嫁衣襯著肌膚如雪腾务。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,954評論 1 283
  • 那天削饵,我揣著相機與錄音岩瘦,去河邊找鬼。 笑死窿撬,一個胖子當著我的面吹牛启昧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播劈伴,決...
    沈念sama閱讀 38,271評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼密末,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了宰啦?” 一聲冷哼從身側響起苏遥,我...
    開封第一講書人閱讀 36,916評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎赡模,沒想到半個月后田炭,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,382評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡漓柑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,877評論 2 323
  • 正文 我和宋清朗相戀三年教硫,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片辆布。...
    茶點故事閱讀 37,989評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡瞬矩,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出锋玲,到底是詐尸還是另有隱情景用,我是刑警寧澤,帶...
    沈念sama閱讀 33,624評論 4 322
  • 正文 年R本政府宣布惭蹂,位于F島的核電站伞插,受9級特大地震影響,放射性物質發(fā)生泄漏盾碗。R本人自食惡果不足惜媚污,卻給世界環(huán)境...
    茶點故事閱讀 39,209評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望廷雅。 院中可真熱鬧耗美,春花似錦京髓、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,199評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至甸私,卻和暖如春诚些,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背皇型。 一陣腳步聲響...
    開封第一講書人閱讀 31,418評論 1 260
  • 我被黑心中介騙來泰國打工诬烹, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人弃鸦。 一個月前我還...
    沈念sama閱讀 45,401評論 2 352
  • 正文 我出身青樓绞吁,卻偏偏與公主長得像,于是被迫代替她去往敵國和親唬格。 傳聞我的和親對象是個殘疾皇子家破,可洞房花燭夜當晚...
    茶點故事閱讀 42,700評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,116評論 0 13
  • 概要 64學時 3.5學分 章節(jié)安排 電子商務網(wǎng)站概況 HTML5+CSS3 JavaScript Node 電子...
    阿啊阿吖丁閱讀 9,095評論 0 3
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴謹 對...
    cosWriter閱讀 11,089評論 1 32
  • 《Liuzesheng絕句》 —手機有毒 時間花在了手機购岗, 手機虛度時間于微信汰聋, 微信里似乎有想要快樂, 把時間陶...
    liuzesheng閱讀 776評論 36 34
  • 愛看愛聽愛想你喊积,愛手愛腳愛上你烹困。 愛你就《依你》。 1~W 一生一世一雙人乾吻,說天說地說諾言髓梅。永遠和你在這里,秘密花...
    窗花閱讀 126評論 0 0