• js基础1


     

    JS特点

      轻量级脚本语言

      区分大小写

      语句使用分号';'分隔,但使用分号并不是必须的,也可以不用。

      数字,字符串类似于Python,布尔值为true、false,数组==Python中的list

      ===为绝对相等,即类型、数值相等。而==则表示数值相等。‘3’==3 是对的

      使用函数,以花括号{}分隔,函数可以有多个参数,可以有返回值

      变量可以使用var关键字定义,命名规则与Python相同,不使用var定义的变量为全局变量

      常量可以使用const 进行声明,声明后常量值就无法改变。const a=3.14

      null为空,即未声明也未赋值,undefined为未赋值

      单行注释使用//     多行注释使用/*    */

      字符串断行需要使用反斜杠()

      js中的数组和对象的索引方式类似于Python中的list和字典

      定义数组或者对象元素,最后不能添加逗号

      所有的编程语言,包括 JavaScript,对浮点型数据的精确度都很难确定。例如:

    var x = 0.1;
    var y = 0.2;
    var z = x + y            // z 的结果为 0.3
    if (z == 0.3)            // 返回 false
    
    //正确的方式
    
    var z = (x * 10 + y * 10) / 10;       // z 的结果为 0.3

    JS语法

      JS--JavaScript是所有浏览器以及html5中默认的脚本语言,由此看出来她十分流行!!

     js脚本可以放置在  html文件  或者  外部文件中。

      如需在 HTML 页面中插入 JavaScript,请使用 <script> 标签。

    <script>
    alert("hello world");
    </script>

      如需在外部文件中插入js,<script>标签则不能在外部文件中使用,外部文件的扩展名一般是 .js 。

      若使用外部文件,当某个html文件需要使用该js脚本时,需要添加这样一句:

    <script src="myScript.js"></script>

    <script>标签可以在<body>标签中,也可以在<head>标签中。或者同时存在于两个部分中。

    通常的做法是把函数放入 <head> 部分中,或者放在页面底部。这样就可以把它们安置到同一处位置,不会干扰页面的内容。


    js数据对象及其常用属性方法:

      数字Number()

        Number()  将其他类型转换为数字类型

      字符串String()    

    length   返回字符串长度
    
    valueOf()  返回字符串的值
    
    indexOf  返回字符串第一次出现的位置
    
    lastIndexOf  返回字符串最后一次出现的位置
    
    split()  按指定的分隔符进行分割
    
    slice()  切片
    
    toLowerCase()  toUpperCase()   转换大小写
    
    anchor()  link()  ……格式化字符串-->html元素        

      日期Date()   

    getYear()  getMonth()  getDay()……  获取当前用户本地系统日期的年、月、日……
    
    setYear()……            设置当前……
    
    getUTCYear()……        获取当前协调世界时间的年……
    
    setUTCYear……        ……

      数学Math()   

    + - * / %      加 减 乘 除 取余(这属于算术运算符,不属于math对象)
    
    Math.abs()      绝对值
    
    Math.round()      四舍五入
    
    Math.floor()      去尾法取整
    
    Math.pow(a,b)      a的b次幂
    
    Math.random()    随机取0-1之间的数,可以对该数*100啥的,满足自己对大的随机数的需要
    
    Math.max()      传入2个及以上的参数,对这些参数找最大值。
    
    Math.min()
    
    cos  sin  tan……    正弦 余弦 正切……
    <script>
        var numb_arr=new Array(5);
        for (var i= 0;i<5;i++){
            numb_arr[i]=Math.floor(Math.random()*10);
    
        }
        var a=0;
        for (var i=0;i<5;i++){
            a=numb_arr[i]*Math.pow(10,i)+a;
        }
        alert(a)
    
    
    
    
    </script>
    实现随机5位数

      数组array()  

    length       数组长度
    
    splice(a,b,i1,i2……)     插入和删除数组元素,a:插入的索引(可以为负数),b删除的个数(可为零),i插入的项目
    
    slice()    切片
    
    concat()    连接两个数组
    
    reverse()     反转数组元素
    
    push()    插入元素到最后面,类似于Python中的list.append()
    
    unshift()      插入元素到最前面
    
    pop()    删除最后面的元素,类似于Python中的list.pop()
    
    shift()        删除最前面的元素。

    js常用运算符

      1  算数运算符

      2  赋值运算符

      3  比较运算符

      4  逻辑运算符

      5  条件运算符

    variablename=(condition)?value1:value2 

    实例:

      voteable=(age<18)?"年龄太小":"年龄已达到";

    解析实例:如果变量 age 中的值小于 18,则向变量 voteable 赋值 "年龄太小",否则赋值 "年龄已达到"


    DOM document object model(文档对象模型) 

      当网页被加载后,整个html文档就是一个对象,而它其中的<head> <body>等元素也都是一个个对象,<head> <body>中的<p> <h1> <div> <style>……全部都是对象。这些对象的集合被称为文档对象模型DOM. 

      通过操作这些对象的属性或者方法,我们可以:

        改变页面中的所有 HTML 元素

        改变页面中的所有 HTML 元素属性

        改变页面中的所有 CSS 样式

        对页面中的所有 事件做出反应

      document基本常用属性

    document.body    //返回当前文档的主体
    document.URL     //返回当前文档的URL

      document常用方法

        要想改变某个html元素必须要先获取到它。DOM中有以下几个方法可以帮助我们获取html元素。

    //查找单个唯一元素
    document.getElementById()
    
    //查找多个具有共同特质的元素
    
    document.getElementsByClassName()  //根据类名查找。
    /*在JS中getElementsByTagName()获得的是一个类似于数组的NodeList对象,但除了有个length属性和下标取值以外再也没有别的数组方法了,因为他不是一个真正的数组对象。
    下边两个方法返回的结果也是跟这个一样。
    */ document.getElementsByName() //根据name查找 document.getElementsByTagName() //根据标签查找

      通用html元素属性:

    ele_obj.innerHTML      //返回该对象的内容
    ele_obj.parentNode    //返回当前元素的父元素

      对于不同的html元素,有不同的属性,比如

        <a>就有a_obj.href=''   a_obj.target=''  

        <form>就有form_obj.length(表单中元素的数目)   form_obj.method='' 

      修改CSS样式

        修改css属性很简单,只需要在对象后面使用style属性。

        例如:修改段落的颜色:  p_obj.style.color=''

      事件

        事件有很多,在这里仅仅列出较为常用的:

    onclick                 //当用户点击某个对象时调用的事件句柄。
    ondblclick             //当用户双击某个对象时调用的事件句柄。
    onmousedown           //鼠标按钮被按下。
    onmouseout           //鼠标从某元素移开
    onmouseover         //鼠标移到某元素之上。
    onsubmit           //确认按钮被点击。

    JS输出

      输入到html元素   document.innerHTML=''

      写入html文档  document.write('')

      弹出警告框   windouw.alert('')

      写入到浏览器控制台  console.log()

    <!DOCTYPE html>
    <html lang="en">
    <!DOCTYPE html>
    <html>
    <head>
    
    </head>
    <body>
    <h1 id="qwer"> test </h1>
    <script>
        document.write('the test page')
        window.alert('hello world')
        document.getElementById('qwer').innerHTML='haha'
    
    
    </script>
    </body>
    </html>
    前三种输入方式代码实例

    JS中的函数

      js中的函数也是对象。

    --定义函数

      三种方式:声明式的静态函数、动态的匿名函数、直接量。

      1  声明式的静态函数

    function  FunctionName (para1,para2……) {
        .......
        .......
    }

    声明式的静态函数在加载页面时只会解析一次,每一次调用该函数时,用的都是解析后的结果。最常使用

      2  匿名函数(动态函数)

    var Name=new  Function('para1','para2'……,'function body');
    //

    每次调用该函数时,都要重新构造该函数。

      3  直接量

    var Function = function(para1,para2,……){
        ......
        ......
        }

    只解析一次,适用于讲一个函数当作参数传递给另一个函数。

    函数的属性

      FunctionName.length    参数的个数

      arguments         参数数组


    js中的“类”

      js中的没有类只有对象,所有js对象都继承于Object对象。创建实例则是通过new。

      对象有属性、方法。而在js中,几乎所有事物皆对象,就比如var a='duang' 可以认为是仅有一个属性的对象。

    对象分为内置和外置两种。(没有混合痔啊。。。。。)

      内置对象---就比如说各种数据类型,像字符串、数字、日期、数组……

      外置对象---也就是我们自定义的对象。

    --如何自定义对象

    //
    
     function a(name,age,body_height){
            this.name=name
            this.age=age
            this.body_height=body_height
            this.move=move
            function move(){
                console.log('I can move')
            }
        }

    我们定义了一个对象a,她有属性name,age,body_height   还有方法:move()

    访问对象属性有两种方法:

    a.age        //第一种
    
    a["age"]     //第二种,注意要加引号!

    访问方法:

    a.move()   //运行函数
    
    a.move     //返回定义函数的字符串
  • 相关阅读:
    ping 介绍
    密码学系列——简介密码学
    ActiveMQ c# 系列——进阶实例(三)
    转:LVS简介
    口罩与mask------看东西方文化差异
    Java设计模式之单利模式(Single Pattern)
    Cadence OrCAD Cpature创建Title Block
    终极干货,数组去重且显示每一个数据重复的次数
    LeetCode 64. 最小路径和 | Python
    LeetCode 剑指 Offer 11. 旋转数组的最小数字 | Python
  • 原文地址:https://www.cnblogs.com/myhusky/p/6046738.html
Copyright © 2020-2023  润新知