zoukankan      html  css  js  c++  java
  • JavaScript总结

    JavaScript定义:

    JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎。

    引入HTML文件方式

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

    变量声明:

    Var

    基本数据类型:

    • number:数字类型
    • string:字符串类型
    • boolean:布尔类型
    • null:空类型

    underfind:未定义

    运算符:

    =

    + - * / %

        +: 遇到字符串变成连接

        -:先把字符串转成数字然后进行运算

        *: 先把字符串转成数字然后进行运算

    /: 先把字符串转成数字然后进行运算

       && ||    <    >    >=    <=    !=    ==

        ===:全等:判断类型与值是否都相等

    ? :

    typeof:判断并返回变量的数据类型

    instanceof:判断变量是否是某种数据类型

    void运算符:用户点击不跳转

      <a href="javascript:void(0);">点我不跳转</a>

    控制语句:

    If else/switch case/for/ for in

    对象:

    内建对象

    Number

    创建方式:

            var num=new Number(8);

            var num=Number(6);

        属性和方法:

            toString():转成字符串

            valueOf():返回一个 Number 对象的基本数字值

    Boolean

    创建方式:

        var boo = new Boolean(true);   

        var boo = Boolean(false);

    属性和方法:

        toString():转成字符串

     valueOf():返回一个 Boolean 对象的基本值(boolean)

    String

    创建方式:

        var str = new String("monkey");

        var str = String("script");

    属性和方法:

        length:字符串的长度

        charAt():返回索引字符

        charCodeAt:返回索引字符unicode

        indexOf():返回字符的索引

        lastIndexOf();字符串中该字符最后出现的索引号

        split();将字符串按照特殊字符切割成数组

        substr():从起始索引号提取字符串中指定数目的字符

        substring():提取字符串中两个指定的索引号之间的字符

     toUpperCase();转大写

    Array:

    创建方式:

        var arr = new Array();//空数组

        var arr = new Array(10);//创建一个长度为10的数组

        var arr = new Array(element0, element1, ..., elementn);//创建数组直接实例化元素

        var arr = [];//空数组

        var arr = [9,8,5,"java"];//创建数组直接实例化元素

    属性和方法:

        length:数组长度

        join():把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔一个

        pop():删除并返回最后元素

        push():向数组的末尾添加一个或更多元素,并返回新的长度

        reverse();反转数组

     sort();排序

    Date:

    创建方式:   

        var d = new Date();

        var d = new Date(毫秒值);//代表从1970-1-1到现在的一个毫秒值

    属性和方法

        getFullYear():年

        getMonth():月 0-11

        getDate():日 1-31

        getDay():星期 0-6

        getTime():返回1970年1月1日午夜到指定日期(字符串)的毫秒数

     toLocaleString();获得本地时间格式的字符串

    Math

    创建方式:   

        使用Math时无需创建对象直接使用即可,例如:Math.PI

        其实Math中的方法就像Java中的静态方法,可以通过类名.方法名的方式使用

    属性和方法

        PI:圆周率

        abs():绝对值

        ceil():对数进行上舍入

        floor():对数进行下舍入

        pow(x,y):返回 x 的 y 次幂

        random():0-1之间的随机数

     round():四舍五入

    正则式RegExp

    创建方式:   

        var reg = new RegExp(正则);

        var reg = /^正则规则$/;

    规则的写法:

        [0-9]

        [A-Z]

        [a-z]

        [A-z]

        d    数字

        D    非数字

        w    查找单词字符

        W    查找非单词字符

        s    查找空白字符

        S    查找非空白字符

        n+    出现至少一次

        n*    出现0次或多次

        n?    出现0次或1次

        {5} 出现5

        {2,8} 2到8次

    方法:   

        test(str):检索字符串中指定的值。返回 true 或 false

    需求:

        校验邮箱:

        var email = aaannn2222@163.com

        var reg = /^[A-z0-9_-]+@[A-z0-9]+.[A-z]+$/;

    reg.test(email);

    函数定义:

    function method(){

            alert("monkey1024");

        }

    method();

    匿名函数

       var method = function(){

            alert("1024");

        };

    method();

    对象函数

    语法:new Function(参数1,参数2,…,函数体);
    注意:参数名称必须使用字符串形式的写法、最后一个默认是函数体,也需要使用字符串形式

    var fn = new Function("a","b","alert(a+b)");

    fn(10,5);

    函数参数:

    形参不用使用var去修饰,直接写参数即可

    形参和实参个数不一定相等

    arguments对象 是个数组 会将传递的实参进行封装

    function fn(a,b,c){

        //var sum = a+b+c;

        //alert(sum);

        //arguments是一个内置的数组对象,会将传递的所有实参封装到里面

        for(var i=0;i<arguments.length;i++){

            alert(arguments[i]);

        }

    }

    fn(6,9,5,8);

    JS全局函数

    编码和解码
    encodeURI() decodeURI()
    encodeURIComponent() decodeURIComponent()
    escape() unescape()

    三者区别:
    进行编码的符号范围不同,实际开发中常使用第一种

    强制转换

    Number()

    String()

    Boolean()

    转成数字

    parseInt()

    parseFloat()

    eval()函数

    将字符串当作javascript脚本进行解析运行

    function print(str){

        eval(str);

    }

    print("var a=2;var b=3;alert(a+b)");

    javascript的常用事件

    • onclick:点击事件
    • onchange:域内容被改变的事件
    • onfoucus:获得焦点的事件
    • onblur:失去焦点的事件
    • onmouseover:鼠标悬浮的事件
    • onmouseout:鼠标离开的事件
    • onload:加载完毕的事件

    绑定事件的方式

    var btn = document.getElementById("btn");

              btn.onclick = function(){

                  alert("事件绑定3");

              };

    BOM对象

    Window对象

    window.alert("提示信息");

    弹框方法:

    提示框

    Alert(“abc”)

    确认框

    var res = confirm("delete?");

      alert(res);

    输入框

    var res =  prompt("input:");

      alert(res);

    打开新网页

    open方法:
    window.open("url地址");

    Location对象

    获取当前浏览器url

    alert(location.href);

    跳转到新的地址(不产生浏览记录)

    location.replace("http://www.qq.com");

    定时器

     //只执行一次

    var timer = setTimeout(function() {

        alert(1);

    }, 1000);

    //clearTimeout(timer); 清除定时器

    //定时器多次

    var i=0;

    var timer = setInterval(function() {

        alert(i++);

    }, 1000);

    //clearInterval(timer); 清除定时器

  • 相关阅读:
    扑克牌顺子
    数组转 二叉树 ,并且输出二叉树的右视图
    数组中逆序对(归并排序思想)
    链表数字加和
    回文数字
    数组中 只出现一次的数
    判断是否有从根节点到叶子节点的节点值之和等于 sum
    双指针求 3个数和 为0的 数
    vue项目将css,js全部打包到html文件配置
    webpack4配置优化
  • 原文地址:https://www.cnblogs.com/feichangnice/p/10836479.html
Copyright © 2011-2022 走看看