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

    1、JavaScript 写在哪里
    • head部分:用于声明变量、函数、类型,为事件绑定处理函数
    • body分布:调用脚步执行
    • 外部脚步:用于定义函数、类型
      • 将代码封装到一个扩展名为js的文件中,然后再需要的地方引用,完成一次定义,多出引用的效果,简化了代码维护
      • 在文件中不需要写标签
    2、基本语法
    • 大小写敏感
    • 弱类型语言: var value = 1;
    • 分号结尾
    • 注释(单行// ctrl + /、多行/* */、方法/** */)
    fun1()
    /**
    * 方法一
    * @param {*} param1 这是参数一
    */
    function fun1(param1){
    }
    字符串既可以使用单引号,也可以使用双引号
     
    2.1、数据类型
    • 因为JavaScript为弱类型语言,故声明变量只需要使用 var 关键字即可声明任何类型
    • 虽然 var关键字 即可声明任何类型,但是JavaScript 仍有数据类型
      • boolean 布尔
      • number 数字
      • string 字符串
      • Undefined 未定义
      • Null 空对象
      • Object 对象类型
      • Undefined 类型和Null类型都是只有一个值得数据类型,值分别为undefined 与null
    • 查看变量类型可以使用 typeof 方法
    2.2 集合
    • 数组:[....]
      • var array1 = new Array(1); //赋值长度没有意义
      • var array2 = new Array(1);
      • var array3 = [];

    上面三种赋值

    var array = [1, 2, 3, 4, 5, 6]
     
    • 键值对:[键:值;...]
    var kv ={};
    var KeyValues = {"key1":"value1", "key2":"value2",....}
    // 赋值
    kv["a"] = "A";
    kv["b"] = "B";
    kv.c = "C";
    kv.d = "D";
    注意:键 不加"" js对象, 加"" jion格式的对象
    • Array 对象属性
    length 设置或返回数组中元素的数目
    • Array 对象方法
      • concat() 连接两个或更多的数组,并返回结果  // 不会改变原有数组
      • join() 把数组中的所有元素放入一个字符串,元素通过指定的分隔符进行分隔 // 返回一个字符串,默认逗号连接
      • push() 向数组的末尾添加一个或更多元素,并返回新的长度 // 返回一个长度
      • reverse() 颠倒数组中元素的顺序  
      • sort() 对数组的元素进行排序
      • splice() 删除元素,并向数组添加新元素
      • //array3.splice(2, 2, [56, 12]) 从下标为2开始删除两个元素,然后添加元素[56, 12]
      • array3.splice(2); 删除下标2开始后面的所有
      • array3.splice(0, 0, 1); 往开头添加1
    • 类型转换
      • parseInt("6789"); // 字符串转换为整数
      • parseFloat("6789.06"); // 字符串转换为浮点数
    2.3 方法使用
    使用关键字function定义方法
    方法名使用驼峰命名法
    方法可以设置参数及返回值
     
    function myfunction(param1, param2) {
    return param1 + param2;
    }

     

    2.4 匿名方法
    匿名方法可以简单理解成 不需要写方法名称的方法
    var fun = function(p1) {
    alert(p1);
    }
    fun(2);

     

    (function(p1) {
    alert(p1);
    })(1);
     
    3、闭包
    目前可以简单理解成子方法可以使用父方法的变量即可(不建议使用闭包,变量不易释放)
     
    4、DOM
    • DOM即 Document Object Model
    • Dom用于操作html文档,准备的说是操作html标签的内容
    • JavaScript中将每一个标签当做对象处理
    • 在HTML中,每个标签都用欧自己的属性,比如 style id class等,也拥有事件、方法,同样在is中作为对象处理的标签也拥有 属性、事件、方法等成员
    • 操作DOM对象,一般使用document 关键字调用
    4.1、js获取元素的方法
    • document.getElementById();根据id获取元素节点
    • document.getElementsByClassName();根据class的值 获取一组元素节点
    • document.getElementsByName(); 根据name获取一组元素节点
    • document.getElementsByTagName(); 根据标签名称获得一组元素节点
    • <div id="dv1" class="dv">我是dv1</div>
    • <div id="dv2" class="dv">我是dv2</div>
    • <div id="dv3" class="dv">我是dv3</div>
    • <div id="dv4" class="dv">我是dv4</div>
    • console.log(document.getElementById("dv1"));
    • console.log(document.getElementsByClassName("dv"));
    • console.log(document.getElementsByName(""));
    • console.log(document.getElementsByTagName("div"));
    4.2、注册事件
    事件注册常用的方式有多种,常用的方法有两种,一种为直接在元素上注册事件,另一种在获取的对象上注册触发事件
     
    (1)元素上注册事件
    <input type="text" name="" id="text1" value="11" onclick="clickMe()"> // 方法后面的()
    <input type="button" value="按钮" onclick="clickMe()">
    <script>        
    function clickMe() {
    //通过点击目标获取对象,在通过对象获取属性
    alert(event.target.value);
    console.log(event.target.value);
    }</script>
    (2)对象注册法
    <input type="text" name="" id="txt1" value="11">
    <script>
    document.getElementById("txt1").onchange = function() {
    alert(event.target.value);
    }
    document.firstChild; 获取第一个子元素
    </script>
     
    4.3 动态操作元素
    • document.createElement(); 创建元素
    • document.appendChild(); 添加子元素
    • document.insertBefore(newEl, orgEl); 在元素前添加元素
    • document.firstChild; 获取第一个子元素
    • document.childNodes; 获取所有子节点元素 
    • document.removeChild(); 移除指定子节点元素
    4.4 获取元素内容
    • innerHTML 用于获取与赋值拥有开闭标签的元素中全部的内容
    • innerText 用于获取与赋值拥有开闭标签的元素中文字部分的内容
    4.5 操作样式
    操作style属性
    style属性可以设置或返回样式
    style 设置css特征值时,需要把特征的短横线命名法 改为驼峰命名法 后使用
    5、BOM
    • BOM即Browser Object Model
    • BOM用于操作浏览器行为
    • 操作BOM对象,一般使用Window 关键字
    5.1、常用方法
    • alert():弹出提示对话框
    • confirm():弹出确认对话框,返回bool值类型
    • window.close();关闭浏览器
    • prompt(): 弹出用户输入对话框,返回输入的内容,如果取消则返回null
    • setInterval(code, milliseconds):计时器方法可按照指定的周期(以毫秒计)来调用函数或计算表达式
      • code:需要执行的代码
      • milliseconds:执行代码的周期
      • 方法会不停的调动函数,直到 clearInterval() 被调用或窗口被关闭,由setInterval() 返回的计时器,ID 值可用作 clearInterval() 方法参数
    • setTimeout(code, milliseconds):一次性计时器方法用于在指定的毫秒数后调用函数或计算表达式
      • code:需要执行的代码
      • milliseconds:执行代码的周期
      • clearInterval() 方法来阻止函数的执行,由setInterval() 返回的计时器 ID 值可用作 clearInterval() 方法参数
    • location 浏览器地址栏对象
      • hash 返回一个URL的锚部分
      • host 返回一个URL的主机和端口
      • hostname 返回URL的主机名
      • href 返回完整的URL
      • pathname 返回的URL路径名
      • port 返回一个URL服务器使用的端口号
      • protcol 返回一个URL协议
      • search 返回一个URL的查询部分
    • onload 页面加载完成后调用
     
          
     
  • 相关阅读:
    51nod乘积之和
    Dell服务器安装OpenManage(OMSA)
    Nginx反向代理PHP
    搭建haproxy
    108. Convert Sorted Array to Binary Search Tree
    60. Permutation Sequence
    142. Linked List Cycle II
    129. Sum Root to Leaf Numbers
    118. Pascal's Triangle
    26. Remove Duplicates from Sorted Array
  • 原文地址:https://www.cnblogs.com/fuyouqiang/p/14681684.html
Copyright © 2011-2022 走看看