zoukankan      html  css  js  c++  java
  • html基础:js

    js是一种脚本语言。在html中起到操控行为的作用。在html中,html代码如果是一个人的话,那么js就是这个人的行为

    js在html的head中被引用,也可以在body中被引用。引用方式用<script></script>标签:<script src="public.js" type="text/javascript"></script>

    放在head和body中的区别:因为h'tml代码在解析时,是按顺序从上倒下运行的。如果放在head中,就会先执行js,js执行忘了才会继续body中的html,显示在页面。所以这种情况下,我们打开页面会先看见长时间的空白。因为正在加载js.用户体验不好。。而如果放在body中。在执行时,先执行body中的html代码,将页面先呈现在用户面前, 最后执行到js时,js可以在后台慢慢加载。用户体验比较好

    一、字符串操作

    //定义字符串 
    var str = '你开心就好!'; 
    var name = 'aaaaaa'; 
    // 字符串的拼接 
    var name_str = name+str;  
    //字符串操作 
    str = 'aaaaajijiji' 
    str.charAt(0) 根据角标获取字符串中的某一个字符  char字符 
    str.substring(1,3) 根据角标获取 字符串子序列 大于等于x  小于y 
    str.length 获取字符串长度 
    str.concat('第一个字符串')  拼接字符串 
    str.indexOf('大师') 获取子序列的位置 
    str.slice(0,1)  切片 start end 
    str.toLowerCase()  变更为小写 
    str.toUpperCase() 变更大写 
    str.split('',1) 切片 返回数组 参数2 为取分割后数组的前x个元素
     
    数字类型(JavaScript 只有一种数字类型。数字可以带小数点,也可以不带)
     
    var age = 18;
    var score = 89.22; 
    number = '18'; 
    // 字符串转
    var n = parseInt(number); //如果number带小数点,则会直接去掉小数点后内容
    // 转换成小数 
    f =parseFloat(number)
    布尔类型(true 或 false)
    var t = true; var f = false;//python中都是大写的,js中都是小写的

    二、数组

    // 第一种创建方式 var list = new Array(); 
    list[0] = '第一个元素'; 
    list[1] = '第二个元素'; 
     
    // 第二种创建方式 
    var list2 = new Array('第一个元素','第二个元素'); 
     
    // 第三种创建方式 
    var list3 = ['第一个元素','第二个元素']; 
     
    数组操作 
     
    list3.length 数组的长度 
     
    list3.push('dsx') 尾部追加参数 
     
    list3.shift() 头部获取一个元素 并删除该元素 
     
    list3.pop() 尾部获取一个元素 并删除该元素 
     
    list3.unshift('dsx') 头部插入一个数据 
     
    list3.splice(start, deleteCount, value) 插入、删除或替换数组的元素 
     
    list3.splice(n,0,val) 指定位置插入元素 
     
    list3.splice(n,1,val) 指定位置替换元素 
     
    list3.splice(n,1) 指定位置删除元素 
     
    list3.slice(1,2) 切片;
     
    list3.reverse() 反转 
     
    list3.join('-') 将数组根据分割符拼接成字符串 
     
    list3.concat(['abc']) 数组与数组拼接 
     
    list3.sort() 排序

    三、对象

    类似python中的字典

    var dict = {name:'dsx',age:18,sex:'' };
    var age = dict.age; //通过key,获取到value
    var name = dict['name'];
    delete dict['name'] 删除
    delete dict.age 删除

    四、循环

    //        if(1==2){
    //            console.log(1111111)
    //        }
    //        else if(2==2){
    //            console.log(2222)
    //        }
    //        else{
    //            console.log('最后了')
    //        }
    
    //javascript当中如果是两个等号,代表不去校验数据类型是否相同.三个等号会判断数据类型
    //        if ('1'==1){
    //            console.log(11111)
    //        }
    // 以上代码会打印出11111
    
            if('1'===1){
                console.log(1111111)
            }
            else{
                console.log(222222)
            }
    //        以上代码会打印出222
    
    
    //switch
            switch(2){
                case 1:
                    console.log(1111);//多行代码的情况,必须加上分号
                    break;//每个分支都必须加break
                case 2:
                    console.log(22222);
                    break;
                default:
                    console.log(33333)
    
            }
    
    //        for循环--字符串
            var name='dsx nhy';
            for(var a in name){//循环的是角标,0,1,2,3.。。
                console.log(name[a])
            }
    // 数组,循环的还是角标
            var list=['大师兄','怒牛','andas'];
            for(var i in list){
                console.log(list[i])
            }
    //字典,循环的是key
            var dict={'宝马':'BMW','奔驰':'bc'};
            for (var d in dict){
                console.log(d);
                console.log(dict[d])
            }
    
    //        下面这种方法,不支持字典的循环
            var list=['大师兄','怒牛','andas'];
            for(var i=1;i<=list.length;i++){
                console.log(i);
                console.log(list[i])
            }
    
    //        while循环
            while(1==1){//死循环
                console.log(111111)
            }

    五、函数

    //        常规函数
            function f(name,age){//可传参,也可不传
                console.log(name);
                console.log(age);
    
            }
            f('dsx',19)//        自执行函数
            (function (name) {
                console.log('自执行函数')
    
            })('实参name')
            //相当于先(function()),function函数外层括号成一个变量f,然后变量f后加上括号,可以自动执行f().等同下面代码
    //        f=(function(){console.log('fdfd')});
    //        f()

    六、对象

    通过new关键字创建对象

    在js中,方法和类的区别在于是否有this.如果方法用到了js,将自动解析为类

    <script>
        function f(name) {
            this.name=name;//函数中写了this,js就自动将函数当作一个类。this等同python中的self
            this.say=function(){//匿名函数
                console.log('say'+this.name)
            }
    
        }
        var obj=new f('dfdf');//通过new创建对象
        console.log(obj.name);
        obj.say()
    </script>
  • 相关阅读:
    [loj2706]文本编辑器
    [atAGC053C]Random Card Game
    [atAGC056E]Cheese
    [cf1615G]Maximum Adjacent Pairs
    [cf739D]Recover a functional graph
    [uoj693]地铁规划
    [atAGC053E]More Peaks More Fun
    [atAGC056B]Range Argmax
    [atAGC056F]Degree Sequence in DFS Order
    SceneGrabber NET 视频批量自动截图软件使用技巧
  • 原文地址:https://www.cnblogs.com/bendouyao/p/9250723.html
Copyright © 2011-2022 走看看