zoukankan      html  css  js  c++  java
  • 001_JavaScript学习

    1,面向对象,事件驱动

    2,动态,交互性

    3,解释性语言,非强(弱)类型变量:不用声明,解释时检查类型

    4,区分大小写,嵌入html,句尾加分号,可以独立保存为一个外部文件,但其中不能包含<script></script>标签

    5,js常用的语句:

    document.write("this is my first js");

    <a href="javaScript:alert('test alert')">test alert</a><br>

    <a href="#" onclick="alert('test onclik')">test onclik</a>

    <input type="button" value="button" onclick="testFunction(1);">

    <script type="text/javascript" src="./js/hello.js"></script>

    function testFunction(testNum){

    quanjuVar02 = "在方法内没有var的全局变量";

    }

    var quanjuVar01 = "定义在方法外的全局变量";

    with(document){
            writeln("with(对象)");

    }

    等同于:document.writeln("xxxx");

    function member(name,sex){/* 构造函数 */
    this.name = name;
    this.sex = sex;
    }

    function showProperty(obj,objString){
    var str = "";
    for(var i in obj){//for循环
    str += objString + "." + i + "=" + obj[i] + "<br>"; 
    }
    return str;
    }

    var obj = new member("刘德华","男");

    document.writeln(showProperty(obj,"person"));
    <script type="text/javascript" charset="UTF-8">
    //js中日期的操作
    var date = new Date();
    var day = date.getDay();
    if(day == 0 ){

    day = "日";
    }

    document.writeln("直接打印全部时间:"+date+"<br>");
    document.writeln("分开打印年月日:"+(date.getYear()+1900)+"年"
    +(date.getMonth()+1)+"月"
    +date.getDate() + "日"
    +"星期"+day + "        "
    +date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds()
    +"<br>");
    </script>
    <script type="text/javascript" charset="UTF-8">

    var fruit = new Array("apple","apple01","apple02");
    for(var i=0; i<fruit.length;i++){
    document.writeln(fruit[i]);
    }
    document.writeln("<br>");

    var fruit01 = new Array(3);
    fruit01 = new Array();
    fruit01[0] = "apple";
    fruit01[1] = "apple2";
    fruit01[2] = "apple3";
    for(var i=0; i<fruit01.length;i++){
    document.writeln(fruit01[i]);
    }
    document.writeln("<br>");

    var fruit03 = ["apple001","apple002","apple003"]
    for(var i=0; i<fruit03.length;i++){
    document.writeln(fruit03[i]);
    }
    document.writeln("<br>");

    </script>
    join() toString() reverse() valueOf()
    二维数组,String操作:48
    <script type="text/javascript" charset="UTF-8">
    function isEmail(){
    var ele_Email = document.getElementsByName("email")[0];
    if(ele_Email.value.indexOf("@") == -1){
    alert("please input right email");
    }else{
    alert("ok");
    }
    }

    </script>
      <input type="text" name="email">
      <input type="button" value="check" onclick="isEmail();">
    <script type="text/javascript" charset="UTF-8">
    function member(name,sex){
    this.name = name;
    this.sex = sex;
    this.display = display;//指定member对象的display方法
    }


    function display(){
    var str = this.name + "=" + this.sex;
    document.writeln(str);
    }

    var m1 = new member("lisi","man");

    document.writeln("姓名="+m1.name+"<br>");
    document.writeln("姓名="+m1.sex+"<br>");
    document.writeln(m1.display()+"<br>");//推断出是函数,所以调用display()而不是this.display
    </script>

    function mOver(object){
    object.color = "red";
    }

    function mOut(object){
    object.color = "blue";
    }

     <font onclick="window.location.href='https://www.baidu.com'" onmouseover="mOver(this)" onmouseout="mOut(this)">百度</font>

    this在这里是指font对象

    定时器:

        定时器名 = setTimeout("<表达式>",毫秒)

    var num = 0;
    function count(){
    setTimeout("cou()",7000);//注意这里需要7秒才执行,但是后面的输出语句将不会等待
    document.writeln("num="+num);
    }
    function cou(){
    document.writeln("num="+num);
    num ++ ;
    }
    </script>

      <input type="button" value="check" onclick="count();">


    var sec = 0;

    var timeId = setInterval("count()",1000);

    function count(){
    document.getElementById("num").innerHTML=sec++;
    }
      <font color="red" id="num">0</font>秒钟
      <input type="button" value="stop" onclick="clearInterval(timeId);">
    function getEvent(event){//事件自动传入
    alert("事件类型:"+event.type);
    }
    document.onmousedown = getEvent;//没有()
    <input type="button" value="check" id="check">
    <script type="text/javascript" charset="UTF-8">
    var obj = document.getElementById("check");
    obj.onclick = clickHandler;

    function clickHandler(event1){
    alert(event1.type);
    }
    </script>
    function focuss(){
    var ele = document.getElementById("valueId2");
    ele.focus();
    }
    document.cookie = “”
     

    function(message){console.log(message);调试js代码}——但是IE不认识console.log,所以要注释掉

    function testConsole(message){
    console.log(message);//注释掉,是不会报错的
    console.info(message);//注释掉,是不会报错的
    console.warn(message);//注释掉,是不会报错的
    console.error(message);//注释掉,是不会报错的
    }

    function test(message){
    testConsole(message);
    }

    test("message");


    6,js的内置对象

    window(<font onclick="window.location.href='https://www.baidu.com'">百度</font>)  
    setInterval()和clearInterval()  
     
    窗口对象:window.属性/方法  opener.属性/方法
    screen
    事件:event(document.onmousedown = getEvenet)
     
     
     
     
     
     
     

    7,函数就是对象

    8,var add = function(number)   ==>function add(number)

    9,没有方法(函数)重载的概念

    10,传参个数多少无关,如果打印一个null值:Undefined undefined

    11,Function 对象,自定义函数是Function类型(number是传参,后面一个参数是方法体)

    12,每个函数都一个隐含的对象:arguments[0](给当前函数传递的第一个实际参数),表示给函数实际传递的参数。和函数的形参无关

        arguments.length

    13,模拟函数的重载:

  • 相关阅读:
    HDU 4348 To the moon(可持久化线段树)
    HDU 5875 Function 大连网络赛 线段树
    HDU 5877 2016大连网络赛 Weak Pair(树状数组,线段树,动态开点,启发式合并,可持久化线段树)
    HDU 5876 大连网络赛 Sparse Graph
    HDU 5701 中位数计数 百度之星初赛
    CodeForces 708B Recover the String
    Java实现 蓝桥杯 算法提高 套正方形(暴力)
    ASP.NET生成验证码
    ASP.NET生成验证码
    ASP.NET生成验证码
  • 原文地址:https://www.cnblogs.com/lirenhe/p/9774472.html
Copyright © 2011-2022 走看看