JS基础

JS基础语法

1.基础语法
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>基础语法</title>
    </head>
    <body>
    </body>
    <!-- 1. JS的引入 -->
    <!-- 内部引入 -->
    <script type="text/javascript">
        // 变量 - 内存
        // JS声明变量都用var关键字
        // 五种基本数据积类型
        // 变量名要求:
        // 1.数字 字母 下划线和$符号的组合
        // 2.不能以数字开头
        // 3.不能是关键字和保留字
        // 4.区分大小写
        // 规范: 可以使用驼峰命名法
        var a = 10; // 数值 Number
        var b = "123" // 字符串 String
        var c = '123' // 字符串 String
        var d = true; //布尔类型 boolean
        var e = false; // 布尔类型 boolean

        var f = null; //空对象
        var g; //未定义类型 undefined;

        // 1字节 = 8个二进制位
        // java 强类型语言
        // JS 弱类型语言

        // 判断相等 == ===
        // == 会判断两个值是否相等
        // === 除了判断值之外,还会判断类型
        console.log("5" == 5); //true
        console.log("5" === 5); //false

        console.log("5" != 5); //false
        console.log("5" !== 5); //true

        for(var a = 3; a < 10; a+=5){
            console.log(a);
        }

        // 类型转换
        // 查看类型
        console.log(typeof a);
        // 转数字 (true, false)
        console.log(Number(true));//1
        console.log(Number(false));//0
        console.log(Number("123"));//123
        console.log(Number("abc"));//NaN
        console.log(Number("a1"));//NaN
        console.log(Number("1a"));//NaN
        console.log(Number(""));//0
        console.log(Number(" "));//0
        console.log(Number(undefined));//NaN
        console.log(Number(null));//0

        // 转字符串
        console.log(String(true))//"true"
        // 转布尔值
        // 非0为真 非空为真
        console.log(Boolean(1231212));
        console.log(Boolean(""));
        // 隐式转换
        // 加号两边如果有一个是字符串,就是拼接字符串
        // 其他算数运算符是转化为数值计算
        console.log(3 + true);//4
        console.log(null + 5);//5
        console.log(false + "2");//false2
        console.log(5 - true);//4
        console.log(7 + null);//7
        console.log(6 + undefined);//NaN

        // 转数字 parseInt()
        console.log(parseInt(5.6));//5
        console.log(parseInt("5.6"));//5
        console.log(parseInt("34a6"));//34
        console.log(parseInt("a1"));//NaN

        // 10进制转2进制
        console.log(parseInt(15,8));

        //生成随机数
        var num = parseInt(Math.random() * (30 - 20 + 1) + 20);
        console.log(num);

        // 函数  JS里面的变量只分为函数内部的局部变量 和 函数外面的全局变量
        function test(a,b){
            console.log(a + b)
            return a * b;
        }
        var c = test(10,20,30);
        console.log(c);

        // 匿名函数
        var fn = function (){
            console.log("匿名函数")
        };

        // 匿名函数自执行
        (function (){
            console.log("匿名函数1")
        })();

        (function (){
            console.log("匿名函数2")
        }());

        fn();

        console.log("hello word");
    </script>
    <!-- 外部引入 -->
    <script type="text/javascript" src="xx.js"></script>
</html>

简单的DOM操作

1.基础的DOM操作
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>DOM</title>
        <style type="text/css">
        #first{
            width: 200px;
            height: 200px;
            background-color: red;
        }
        </style>
    </head>
    <body>
        <div id="first"></div>
        <input type="text" class="uName" />
        <input type="button" value="点击" />
    </body>
    <script type="text/javascript">
        // 获取元素 并修改背景颜色
        var first = document.getElementById('first');
        first.style.backgroundColor = "blue";
        first.style.border = "5px gray solid";
        first.style.borderRadius = "15px";
        first.style.margin = "50px auto"
        first.style.transform = "rotate(45deg)"

        // 修改内容 innerHTML可以解析字符串里面的标签
        // innerText不能解析 可以写留言板
        first.innerHTML = "<p>福<p>";
        first.innerText = "<p>福<p>";
        console.log(first.innerHTML);
        // 通过类名获取一组元素
        var uNames = document.getElementsByClassName("uName");
        // uNames是所有类名为uName的集合(先当数组使用)
        // 获取 修改输入框都是用value
        uNames[0].value = "我是一个输入框"
        console.log(uNames[0].value);
        // 两种获取方式 三种修改内容 一种修改样式


        // 通过标签名获取
        var button = document.getElementsByTagName("input");
        var a = 1;
        // 添加点击方法 每次点击都会执行下面这个函数
        button[1].onclick = function(){
            uNames[0].value = a++;
            first.style.width = a * 10 + "px";
            first.style.height = "100px";
            first.style.transition = "1s";
            console.log(uNames[0].value);
        }
    </script>
</html>

定时器

3.一次性定时器和循环定时器
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>定时器</title>
        <style>
            #first{
                width: 100px;
                height: 100px;
                background-color: red;
                position: absolute;
                left: 10px;
                top: 10px;
            }
        </style>
    </head>
    <body>
        <div id="first"></div>
    </body>
    <script type="text/javascript">
        // 一次性定时器 延时器
        setTimeout(f1,1000);
            function f1(){
                console.log("执行了f1");
        }
        // 循环定时器
        var timer = setInterval(function(){
            console.log("循环定时器")
        },2000);

        setTimeout(function(){
            // 清除定时器
            clearInterval(timer);
            // clearTimeout()
        },8000)

        var first = document.getElementById('first');
        first.onclick = function(){
            var move = setInterval(function(){
                first.style.left = first.offsetLeft + 5 + "px";
                if (first.offsetLeft >= 500) {
                    clearInterval(move);
                }
            },20);
        }
    </script>
</html>
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值