zoukankan      html  css  js  c++  java
  • 学习blus老师js(1)--基础

    1.网页换肤:

    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>无标题文档</title>
    <link id="l1" rel="stylesheet" type="text/css" href="css1.css" />
    <script>
    function skin1()
    {
        var oL=document.getElementById('l1');
        
        oL.href='css1.css';
    }
    
    function skin2()
    {
        var oL=document.getElementById('l1');
        
        oL.href='css2.css';
    }
    </script>
    </head>
    
    <body>
    <input type="button" value="皮肤1" onclick="skin1()" />
    <input type="button" value="皮肤2" onclick="skin2()" />
    </body>
    </html>
    View Code

    css1.css

    @charset "utf-8";
    /* CSS Document */
    
    body {background:black;}
    input {width:200px; height:100px; background:yellow;}
    View Code

    css2.css

    @charset "utf-8";
    /* CSS Document */
    
    body {background:#CCC;}
    input {width:100px; height:50px; background:red;}
    View Code

    2.

     任何标签都可以加ID,包括link

    任何标签的任何属性,也都可以修改
    HTML里怎么写,JS里就怎么写
    但是有一个例外,html的class,js里面要写className,因为class在js里面是一个关键字;
    除了class外,html里面和js里面属性都是统一。
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>无标题文档</title>
    <style>
    #div1 {width:100px; height:100px; border:1px solid black;}
    .box {background:red;}
    </style>
    <script>
    function toRed()
    {
        var oDiv=document.getElementById('div1');
        
        oDiv.className='box';
    }
    </script>
    </head>
    
    <body>
    <input type="button" value="变红" onclick="toRed()" />
    <div id="div1">
    </div>
    </body>
    </html>
    View Code

    3. 

    操作属性的方法:
    第一种方法:使用xx.xx
    oTxt.value = 'abc';
    第二种方法:使用[]
    oTxt['value'] = '123';
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>无标题文档</title>
    <script>
    function setText(name)
    {
        var oTxt=document['getElementById']('txt1');
        
        //第一种操作属性的方法
        //oTxt.value='dsfasdfasdf';
        
        //第二种操作属性的方法
        oTxt[name]='dsfasdfasdf';
    }
    </script>
    </head>
    
    <body>
    <input id="txt1" type="text" />
    <input type="button" value="改变文字" onclick="setText('title')" />
    </body>
    </html>
    View Code

    4.变量类型

    1) typeof运算符
    js里面常见的6种类型:
    numberstringbooleanundefinedobjectfunction
    一个变量应该只存放一种类型的数据
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>无标题文档</title>
    <script>
    var a=12;
    //alert(typeof a);    //number
    
    a='asdfasd';
    //alert(typeof a);    //string
    
    a=true;
    //alert(typeof a);    //boolean
    
    a=function ()
    {
        alert('abca');
    };
    //alert(typeof a);    //function
    
    a=document;
    //alert(typeof a);    //object
    
    var b;
    alert(typeof b);    //undefined
    
    //1.真的没定义
    //2.虽然定义,没有给东西
    </script>
    </head>
    
    <body>
    </body>
    </html>
    View Code

    2)数据类型转换:

    • 显式类型转换(强制类型转换)
    NaN Not a Number 非数字
    var a = parseInt('abc');
    alert(a) ; //NaN
    alert(isNaN(a)) ; //true
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>无标题文档</title>
    <script>
    window.onload=function ()
    {
        var oTxt1=document.getElementById('txt1');
        var oTxt2=document.getElementById('txt2');
        var oBtn=document.getElementById('btn1');
        
        oBtn.onclick=function ()
        {
            var n1=parseInt(oTxt1.value);
            var n2=parseInt(oTxt2.value);
            
            if(isNaN(n1))
            {
                alert('您输入的第一个数字有误');
            }
            else if(isNaN(n2))
            {
                alert('您输入的第二个数字有误');
            }
            else
            {
                alert(n1+n2);
            }
        };
    };
    </script>
    </head>
    
    <body>
    <input id="txt1" type="text" />
    <input id="txt2" type="text" />
    <input id="btn1" type="button" value="求和" />
    </body>
    </html>
    View Code
    • l隐式类型转换
      ==、===
    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  1.数字相减

     5.什么是闭包

    简单的理解:

    子函数可以使用父函数中的局部变量
    之前一直在使用闭包
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>无标题文档</title>
    <script>
    //子函数可以使用父函数的局部变量
    
    function aaa()        //父函数
    {
        var a=12;
        
        function bbb()    //子函数
        {
            alert(a);
        }
        
        bbb();
    }
    
    aaa();
    </script>
    </head>
    
    <body>
    </body>
    </html>
    View Code

    但是闭包还有一些高级的应用;

    6.命名规范:

    命名规范及必要性
    l可读性——能看懂
    l规范性——符合规则
     
    匈牙利命名法
    l类型前缀
    l首字母大写

     

    7.什么是真、什么是假:

    真:true、非零数字、非空字符串、非空对象
    假:false、数字零、空字符串、空对象、undefined

    8.json

    var json={a: 12, b: 5, c: 7};
    
    //循环json
    for(var key in json)
    {
        alert('第'+key+'个东西:'+json[key]);
    }

    9.

    ------------------

  • 相关阅读:
    Request Payload 和 Form Data 的区别
    es6 字符串模板拼接和传统字符串拼接
    TypeScript
    Jquery的$(document).click() 在iphone手机上失效的问题
    Vuex 是什么?
    什么是JSONP?
    git 放弃本地修改操作
    CSS3+HTML5+JS 实现一个块的收缩&展开动画
    Promise学习笔记(一)
    React@16.13.1配合antd UI使用,自定义主题
  • 原文地址:https://www.cnblogs.com/tenWood/p/7668495.html
Copyright © 2011-2022 走看看