2016.11.26 JS

array.push:给数组最后增加元素

数据类型

1.对象([ ],{ },null)object
2.数字number
3.字符串string
4.函数function
5.未定义undefined
6.布尔booleam

字符串转换成数字

Number()
Number是整体转化
Number(function(){});//转化为NaN,非数字
Number(['']);//0
Number([1,2,3]);//NaN
Number({});//NaN
Number(null);//0
对象和有多个数据的数组都会转化为NaN
parseInt:解析成整数,只能转字符串,其他的都不能转;从左到右一位一位的看,如果遇到非数字就停止,也认一些数字:如 空格,+,-,10px

parseFloat(浮点数):可以转化小数,认小数

隐式类型转换

在做加法时,如果有字符串,会将我的操作数都变成字符串,然后再相加 如:'1'+1;//11
"-":会转换成数字 如 '10'-1;//9
- ,/ ,% ,*:都会转换成数字
字符串比较:'9'<'10';//false 是一位一位的比较 先比较9<1

NaN

NaN:not a number 不是个 数字 的 数字类型
NaN 可以看成是false
NaN自己和自己都不相等 NaN==NaN是false
isNaN(NaN)是true

封装函数

1.先将代码全部放在函数中,调用确保可运行
2.修改我的顶点元素,防止外部的影响
3.将变化的信息变成自变量,形成可以定制化的效果
4.html结果尽量保持一致
例子:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
<style>
*{
    margin: 0;
    padding: 0;
}

.box{
    width: 350px;
    float: left;
    margin: 50px;
    position: relative;
}

img{
    width: 100%;
}


ul{
    list-style: none;
    position: absolute;
    top: -10px;
    right: -60px;
}

li{
    height: 50px;
    width: 50px;
    background: #ccc;
    margin-top: 10px;
}

li.active{
    background: yellow;
}



</style>
</head>
<body>
    <div class="box" id="box1">
        <img src="img/1.png" alt="" class="img1">
        <ul>
        </ul>
    </div>

    <div class="box" id="box2">
        <img src="img/1.png" alt="" class="img1">
        <ul>
        </ul>
    </div>


    <div class="box" id="box3">
        <img src="img/1.png" alt="" class="img1">
        <ul>
        </ul>
    </div>
<script>

function changeImgs(oBox  ,imgs){
    // var arr = ['img/1.png','img/2.png','img/3.png','img/4.png', 'img/4.png', 'img/4.png'];
    var arr = imgs;
    var oImg = oBox.getElementsByClassName('img1')[0];
    var aLi = oBox.getElementsByTagName('li');
    var oUl = oBox.getElementsByTagName('ul')[0];

    //当前的选择索引
    var cur = 0;//第一张图片



    //根据图片的个数动态的生成li
    var str = '';
    for(var i=0;i<arr.length;i++){
        if(i==cur){
            str = str + '<li class="active"></li>';
        }
        else{
            str = str + '<li></li>';
        }
        
    }

    oImg.src = arr[cur];

    oUl.innerHTML = str;



    function onSelect(){
        //切换图片
        oImg.src = arr[this.index];

        //改变按钮样式
        // this.className = 'active';

        //两种方式:
        //第一种: 先清除所有li的class, 然后在点击的li加上.active

        // for(var i=0;i<aLi.length;i++){
        //  aLi[i].className = '';
        // }

        // this.className = 'active';

        //第二种方法: 先清除之前选择的li, 然后在点击的li加上.active



        aLi[cur].className = '';
        this.className = 'active';

        cur = this.index;





    }

    for(var i=0;i<aLi.length;i++){
        //添加点击函数
        aLi[i].index = i;
        aLi[i].onclick = onSelect;
    }

}
var oBox = document.getElementById("box1");
var oBox2 = document.getElementById("box2");
var oBox3 = document.getElementById("box3");


changeImgs(oBox, ['img/1.png','img/2.png', 'img/3.png']);
changeImgs(oBox2, ['img/3.png','img/4.png']);
changeImgs(oBox3, ['img/3.png','img/4.png', 'img/1.png']);


//封装成函数
1. html结果尽量保持一致
1. 先将代码全部放在函数中, 测试,确保可运行
2. 修改我的顶点元素,防止对外部的影响
3. 将变化的信息变成自变量,形成可以定制化的效果


</script>
</body>
</html>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,056评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,842评论 2 378
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,938评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,296评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,292评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,413评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,824评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,493评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,686评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,502评论 2 318
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,553评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,281评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,820评论 3 305
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,873评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,109评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,699评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,257评论 2 341

推荐阅读更多精彩内容

  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,204评论 0 4
  • 什么是 JavaScript 语言? JavaScript 是一种轻量级的脚本语言。所谓“脚本语言”(script...
    oWSQo阅读 1,785评论 0 1
  • 本章内容 语法 数据类型 流控制语句 理解函数 3.1 语法 3.1.1 区分大小写 区分大小写 3.1.2 标识...
    闷油瓶小张阅读 709评论 0 0
  • 爱情是什么?真的是说不清道不明。在我即将睡着的时候,朋友告诉我和男朋友闹分手,男人要自杀。我听了之后第一感觉,这都...
    星期六早晨阅读 182评论 0 1
  • 一个女生最好等到三十岁再嫁人,因为只有在三十岁,男人才知道自己要什么不要什么,才成熟,不然一个大姐姐娶个小弟弟,那...
    简儿的十年阅读 197评论 12 8