Java Script 基础

Java Script组成

ECMAScript:解释器、翻译 //核心 几乎没有兼容问题
DOM:赋予了js操作html能力 document 有一些操作不兼容
BOM:操作浏览器 window 没有兼容问题(完全不兼容)

变量类型

六种基本数据类型:nember、string、boolean、function、object、undefined
一个变量应该只存一种类型的数据

 var a=12;
        alert(typeof a);  //nember
        a='sfvss';
        alert(typeof a);  //string
        a=true;
        alert(typeof a);  //boolean
        a=function(){
            alert('aaaa');
        }
        alert(typeof a);  //function
        a=document;
        alert(typeof a);  //object
        var b;
        alert(typeof b);  //undefined
                          //1.没有定义
                          //2.定义了但没给东西

数据类型的变化:

var a='1230dfsf45';NaN
alert(parseInt(a));

var a='3.5';
alert(parseInt(a));   //只可以转为整数
alert(parseFloat(b)); //整数小数可以转换

隐式类型转换

var a=5;
var b='5';
        alert(a==b);  //true  先转换类型,然后比较
        alert(a===b); //false 不转换类型,直接比
        var a='12';
        var b='5';
        alert(a+b); // 125  //1.字符串连接    2.数字相加    
        alert(a-b); // 7   //数字相加

输出结果1230 数据类型number 当转换时遇见字母便不再转换
NaN

var a='abc';
        alert(parseInt(a));
 输出结果:
NaN    //非数字
 var a=parseInt('abc');
        var b=parseInt('abc')alert(a==b)
   结果:![在这里插入图片描述](https://img-blog.csdnimg.cn/20200707151246835.png)

所以NaN不等于NaN

var a=parseInt('abc');
        alert(isNaN(a));

输出结果为true isNaN()为判断NaN的函数

求和

<script>
 window.onload=function(){
            var oTxt1=document.getElementById('txt1');
            var oTxt2=document.getElementById('txt2');
            var oBtn1=document.getElementById('btn1');
            oBtn1.onclick=function(){
                //alert(parseInt( oTxt1.value)+parseInt( oTxt2.value));   当输入错误时不会报错
                var n1=parseInt(oTxt1.value);
                var n2=parseInt(oTxt2.value);
                if(isNaN(n1)){
                    alert('您输入的第一个数字有误');
                }
                else if(isNaN(n2))
                {
                    alert('您输入的第二个数字有误');
                }
                else{
                    alert(n1+n2);
            }
        }
    </script>
<input id="txt1" type="text">
    <input id="txt2" type="text">
    <input id="btn1" type="button" value="求和">

结果:在这里插入图片描述

变量的作用域和闭包

<script>
        var a;   //全局变量  
        function aaa(){
            a=12;
            var b=15;  //局部变量
        }
        function bbb(){
            alert(a);
            alert(b); //无法输出
        }
        aaa();
        bbb();
    </script>

闭包
子函数可以使用父函数的局部变量。

function ccc(){          //父函数
            var c=15;
            function ddd(){ //子函数
                alert(c);
            }
            ddd();
        }
        ccc();

命名规范

  • 可读性-------能看懂

  • 规范性-------符合规则
    匈牙利命名法

  • 类型前缀

  • 首字母大写 //便于区分
    在这里插入图片描述
    运算符
    在这里插入图片描述
    隔行变色

<script>
        window.onload=function(){
            var aLi=document.getElementsByTagName('li');
            for (var i =0;i<aLi.length;i++){
                if(i%2==0){
                    aLi[i].style.background='gray';
                }
                else{
                    aLi[i].style.background='';
                }
            }
        }
    </script>
    <ul>
    。。。。
    </ul>

在这里插入图片描述
秒转时间

var a=159;
        alert(parseInt(a/60)+'分'+a%60+'秒');  //直接a/60会得到小数

程序流程控制

在这里插入图片描述
?:三目运算

 a=12;
        a%2==0?alert('双'):alert('单')  //单

break 跳出所有循环
continue 跳过当前循环

Json

var json={a:12,b:5,c:'abc'}; //储存数据
        json.b++;
        alert(json.b);  //6

for in循环
数组:佛如(var i in arr){。。} 不常使用

var json={a:12,b:5,c:'abc',m:55};
        for(var i in json){
            alert(i+'='+json[i]);
        }

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值