后端学前端之JavaScript

  1. 了解Javascript
    JavaScript, 简称为JS, 是一种运行在浏览器中的脚本语言; 可以被嵌入到HTML中直接使用, 用来使页面动态化. JS起初被设计用于在客户端对用户信息进行校验, netspace, Brendan Eich(布兰登·艾奇)用10天时间设计并开发了JS. ECMA262标准, 规范Javascript的标准. Javascript和JScript(微软)非常像. (js在html中的位置任意)
  2. Javascript的组成
    ECMAScript, 简称ES, JS的基本内容, 约束了变量, 语法, 流程控制等基本内容;
    BOM, Browser Object Model, 浏览器对象模型;
    DOM, Document Object Model, 文档对象模型.
    其实BOM包括DOM
  3. ECMAScript
    1)< script>标签的使用和三种输出
    < script>用于定义JS代码块, 可以出现在HTML的任意位置, type属性通常为”text/javascript”, src可以引入外部js文件. 三种输出:
    弹窗输出在这里插入图片描述
//弹窗输出,警告弹窗
    alert("hello world");
    //确认弹窗
    confirm('确认要执行吗?')
    //询问(提示)弹窗
    prompt('请输入所选角色昵称:','如:李白');

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
页面输出

//向页面直接输出信息
    document.write('<h1>你好,世界!</h1>');

在这里插入图片描述
控制台输出

//向控制台输出,通常用于调试代码
    console.log('这是一个控制台输出...');

在这里插入图片描述
在这里插入图片描述
4. JS中的变量和数据类型
JS是一种弱变量类型的语言, 声明变量时要通过var关键字进行. JS中, 变量分为局部变量和全局变量. 定义在函数内的变量就是局部变量, 函数外的变量就是全局变量.
4.1 变量
关键字var修饰变量
注:当未被var修饰的局部变量在经过使用一次后会变成全局变量

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        function demo0() {
            c = 123; // 可以省略var, 但是该变量用完后就会变成全局变量
            console.log("c: " + c);
        }

        function demo1() {
            // 局部变量: 函数内定义的变量
            var a;
            a = 123;
            a = "张无忌";
            console.log(a);
            console.log("b=" + b);
        }

        function demo2() {
            console.log("c: " + c);
        }

        // 全局变量
        var b = "你好!";
    </script>
</head>
<body>
    <!--Emmet插件语法, 简化前端代码的开发, IDEA中默认集成-->
    <input type="button" value="demo0" onclick="demo0();">
    <input type="button" value="demo1" onclick="demo1();">
    <input type="button" value="demo2" onclick="demo2();">
</body>
</html>

4.2 数据类型
在这里插入图片描述
4.3JS中的类型自动转换
主要是了解其他类型和boolean类型的相互转换,if语句等

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        function demo() {
            var b = false;
            b = ""; // 空字符串-->false, 非空字符串-->true
            b = 0; // 0-->false, 非0-->true
            b = null; // null-->false
            b = undefined; // undefined-->false
            if(b) {
                console.log("ok");
            } else {
                console.log("no");
            }
            console.log(null == undefined); // true
            console.log(null === undefined); // false
        }
    </script>
</head>
<body>
    <button onclick="demo();">demo</button>
</body>
</html>

4.4 函数

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        // 在js中, 函数也是一个对象
        function demo1(a, b) {
            return a + b;
        }

        var sum = demo1(5, 2);
        console.log("sum: " + sum);

        // 可以变形为:
        var demo2 = function(a, b) {
            return a * b;
        };

        var result = demo2(5, 2);
        console.log("result: " + result);

        // 在js中, 函数也可以作为参数继续传递
        function demo3(a, b, c) {
            console.log(a(b, c));
        }

        demo3(demo2, 10, 2);
    </script>
</head>
<body>

</body>
</html>

4.5 数组

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript">
        function demo1() {
            /**
             * js中数组的特点:
             *  类型不固定
             *  长度不固定
             *  提供了很多方法直接操作数据
             */
            var arr = new Array();
            arr[0] = 123;
            arr[1] = "hello";
            arr[2] = new Date();
            console.log(arr);
        }

        function demo2() {
            var arr = new Array(123, "hi", new Date());
            console.log(arr);
        }

        function demo3() {
            var arr = [456, "你好", new Date()];
            console.log(arr);
            console.log("数组的长度: " + arr.length);
            arr.length = 1;
            console.log(arr);
        }

        function demo4() {
            var arr1 = [123, 456, 789];
            var arr2 = ["abc", "def", "xyz"];
            // concat: 拼接数组
            var arr = arr1.concat(arr2);
            console.log(arr);
            // push: 数组的末尾添加元素
            var n = arr.push("张无忌");
            console.log(arr);
            console.log("数组的新长度: " + n);
            // pop: 取出数组末尾的元素
            var e = arr.pop();
            console.log(e);
            console.log(arr);
            // shift/unshift: 操作数组开头的元素
            // join: 使用指定的连接符拼接数组元素为字符串
            var str = arr.join("-");
            console.log(str);
            // sort: 排序
            var arr2 = [123, 2, 33, 13];
            console.log(arr2);
            arr2.sort(function(a, b) {
                return a - b;
            });
            console.log(arr2);
        }
        demo4();
    </script>
</head>
<body>

</body>
</html>
  1. BOM
    Browser Object Model, 浏览器对象模型. window对象在BOM中处于顶级地位, 通常把window.省略.
    5.1 window下常用的属性
    5.1.1 screen
    代表整个屏幕, 通常用于获取屏幕信息, 例如宽度, 高度
function demo1() {
    var screen = window.screen;
    console.log("宽度: " + screen.width);
    console.log("高度: " + screen
### 回答1: 后端开发人员前端开发有一些不同之处,因为前端开发更强调用户界面和体验。 如果你是后端开发人员想前端开发,你可以从以下几个方面入手: 1. 先了解前端开发的基本概念,比如 HTML、CSS 和 JavaScript。 2. 习如何使用常见的前端框架,比如 React 或 Angular。 3. 了解如何使用常见的前端工具,比如 Webpack 或 Gulp。 4. 尝试使用前端库和插件,比如 jQuery 或 Bootstrap。 5. 通过实践来提升自己的能力,可以尝试写一些小型的前端项目来练习。 6. 可以加入一些前端开发社区,与其他开发人员交流习经验。 希望这些建议能帮到你。 ### 回答2: 后端前端需要从以下几个方面进行习。 首先,需要了解前端开发的基本知识。习HTML、CSS和JavaScript前端基础知识是非常重要的。HTML负责网页的结构,CSS用来美化页面的样式,JavaScript则是实现前端交互和动态效果的核心技术。 其次,要习一些常用的前端框架和库。像React、Vue和Angular等前端框架都是非常流行的前端开发工具,它们能够提高开发效率并优化用户体验。此外,还可以习一些常用的前端库,如jQuery和Lodash等,它们能够简化前端开发中的一些常见操作。 再者,前端的工程化和构建工具。前端工程化是现代前端开发的重要部分,可以通过使用工程化工具(如Webpack和Gulp)来进行模块化开发、构建和打包项目。此外,还可以了解一些常用的版本控制工具,如Git,以便与团队成员协作开发。 最后,要进行实践和项目经验的积累。通过做一些前端的小项目或参与到实际的前端开发中,不断积累经验和解决实际问题,这样能够更好地巩固所的知识,并且了解到前端开发中的一些实际应用场景和注意事项。 总结来说,后端前端需要具备一定的前端基础知识,并习一些常用的前端框架、库、工程化和构建工具,并加以实践和项目经验的积累。不断习和实践,可以使得后端开发人员成为一名全栈工程师,具备更多的技能和应对复杂项目的能力。 ### 回答3: 后端前端需要掌握一些与后端开发相关的知识和技能,并了解前端开发的基本概念和技术。 第一步,需要了解前端的基础知识。可以开始习HTML、CSS和JavaScript这三者的基本原理和语法,了解它们在前端开发中的应用。 第二步,前端框架和库。掌握一些流行的前端框架和库,如React、Vue等,它们能够提高前端开发效率和代码质量,同时深入理解它们的原理和使用方法。 第三步,前端后端的交互。了解前端后端之间的数据传输方法,习如何使用Ajax、Fetch或者WebSocket等技术与后端进行交互。 第四步,前端性能优化和安全。了解前端性能优化的基本原则和技巧,习如何提高前端应用的加载速度和响应时间。同时也要前端安全的基本知识,防止常见的安全漏洞和攻击方式。 第五步,实践项目和实际场景。通过做一些前端项目,可以加深对前端技术的理解和应用。参与到实际的项目中,与前端团队合作,从中习到更多实际的经验和技能。 最重要的是要保持习的热情和持续习的态度。前端技术在不断发展,需要不断地习和更新知识。坚持习和实践,不断提高自己的前端开发能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值