【个人学习记录】Day1-初识JavaScript——JavaScript

目录

1 JavaScript简介

1.1 JavaScript是什么

1.2 HTML5   CSS3   JavaScript关系*

1.3 JavaScript的由来

1.4 JavaScript与ECMAScrit的关系

1.5 JavaScript有哪三大部分组成*

1.5.1 ECMAScript

1.5.2 DOM ——文档对象模型

1.5.3 BOM ——浏览器对象模型

2 了解JavScript的内核和引擎

3 JavScript的第一句代码

4 JavaScript引入的方法

5 输入输出语句

5.1 输出语句 

5.2 输入语句 

6 小练习

6.1 某度

6.2 某乎


1 JavaScript简介

1.1 JavaScript是什么

       JavaScript是web开发领域中功能强大的编程语言(脚本语言),在浏览器上运行的解释性语言,不要需环境。

1.2 HTML5   CSS3   JavaScript关系*

       HTML5 称为结构:           从语义化的角度来描述页面

       css3 称为表现或者样式: 从审美的角度来美化页

       JavaScript 称为行为:      从交互的角度来提升用户体验

1.3 JavaScript的由来

       1995年,NetScape(网景)公司布兰度.艾奇,用不到两周的时间设计出了能在网页上实现动态效果的编程语言,起初名为liveScript。

       随后网景公司与Sun公司合作(Sun以Java出名),为蹭热度将其改名为JavaScript。

       也就是说,JavaScript和Java没有任何关系。*

1.4 JavaScript与ECMAScrit的关系

       1996年,NetScape(网景)把JavaScript内置于Navigator2.0浏览器中。同年,微软公司开发JScript并将其内置于IE3.0中发布。NetScape(网景)公司面临失去主导权,将JavaScript提交到ECMA国际(欧洲计算协会),希望JavaScript成为国际标准。

       ECMA 规定了浏览器脚本的标准——ECMAScript(JavaScript和JScript的扩展)---es5

       2015年6月,ECMA开发新的标准——ECMAScript ---es6

1.5 JavaScript有哪三大部分组成*

       ECMAScript                                或叫 JavaScript 核心语法

       DOM(Document Object Model)  文档对象模型

       BOM(Browser Object Model)      浏览器对象模型

1.5.1 ECMAScript

       ECMAScript 是由ECMA 国际( 原欧洲计算机制造商协会)进行标准化的一门编程语言,这种语言在万维网上应用广泛,它往往被称为 JavaScript 或 JScript,但实际上后两者是 ECMAScript 语言的实现和扩展。

 

       ECMAScript:ECMAScript 规定了JS的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套JS语法工业标准。

1.5.2 DOM ——文档对象模型

       文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过 DOM 提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)。

1.5.3 BOM ——浏览器对象模型

       BOM (Browser Object Model,简称BOM) 是指浏览器对象模型,它提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。通过BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。

2 了解JavScript的内核和引擎

        浏览器分成两部分:渲染引擎和 JS 引擎。

  • 渲染引擎:用来解析HTML与CSS,俗称内核,比如 chrome 浏览器的 blink ,老版本的 webkit。
  • JS 引擎:也称为 JS 解释器。 用来读取网页中的JavaScript代码,对其处理后运行,比如 chrome 浏览器的 V8。

       浏览器本身并不会执行JS代码,而是通过内置 JavaScript 引擎(解释器) 来执行 JS 代码 。

       JS 引擎执行代码时逐行解释每一句源码(转换为机器语言),然后由计算机去执行,所以 JavaScript 语言归为脚本语言,会逐行解释执行。

       渲染引擎---用来解析HTML与CSS,俗称内核    

       比如: Google (开发商)---chrome(浏览器)---webkit blink

                   微软公司  IE浏览器  Trident内核

                   Mozilla公司   Firefox浏览器  Gecko内核

                   JS 引擎-----内置 JavaScript 引擎(解释器)  

       比如: chrome 浏览器的 V8引擎

                   Mozilla公司的js引擎 SpiderMonkey

                   Edge           Chakra(查克拉)

3 JavScript的第一句代码

       语法规则

       1.对空格,缩进,换行不敏感

       2.区分大小写

       3.每一条语句结束,最好有结束符 (分号;)

       4.符号一定是半角英文

       注释  : 行//           快捷键:ctrl+/

       块注释:  /*  */       快捷键:shift+alt+A

<script>
        alert('hello world~~~');  //弹出一个警告框
        Alert('good~~~');         //Uncaught ReferenceError: Alert is not defined
        //JavaScript对大小写敏感,上述Alert应为alert
</script>

4 JavaScript引入的方法

       CSS 与 JavaScript的区别

       css 引入

       1.行内式  

       2.内嵌式  (头部)

<style>

</style>

       3.外链式

<link rel="stylesheet" href="">

       JavaScript引入

       1. 行内式

       2. 内嵌式 (在页面任何位置都可以)

       3. 外链式

<script src="./js/04.js"></script>
    <button onclick="alert('Hello World!')">点击</button>
    <!-- href="javasrcipt:;" 阻止默认跳转动作   (相当于# 空链接)-->
    <a href="javasrcipt:;" onclick="alert('good job!')">单击</a>

    <a href="javascript:alert('gg')">点击</a>

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

    <script>
        alert('Hello World~~~');
    </script>

5 输入输出语句

5.1 输出语句 

       三个输出语句

       1.alert('');

<script>
    alert('Hello World!');
</script>

       会在网页中弹出警告框,在网页中的效果如图所示。

       该方法没有返回值。如果再输出函数的调用,结果为undefined。

<script>
    alert('hello~~');               //网页中会出现警告框

    alert(alert('hello~~\nworld'));//先后弹出'hello world'和undefined
</script>

       2. console.log();

<script>
    console.log();
</script>

       多使用该语句输出,报错信息可以直接在控制台中查看。

<script>
        console.log('very good~~~');
        console.log('very good~~~');
        console.log('very good~~~');
        console.log('nice');
        console.log('123+56');
        console.log(123 + 56);
        console.log("very'good'");
        console.log('very"good"')l
        console.log("very\"good\"");
        console.log('very\\goo\\\\d');
        console.log('very\ngood');
        console.log(alert('good'));
</script>

       在控制台中显示的结果如图所示。

       3. document.write();

<script>
    document.write();
</script>

       该方法可在文档页面输出,可以解析html标签。

<script>
   document.write('very');
   //   document.write(very);    very is not defined
   document.write('<h2>我是<br>段落</h2>');
</script>

       在页面中的效果如图所示。

5.2 输入语句 

       1. prompt('');  

<script>
    prompt('请输入一个数字');
</script>

       该语句效果如图所示。

       prompt()不同于alert(),存在返回值。

<script>
    var num = prompt("请输入一个数字");
    alert(num);
    console.log(num);
    document.write(num);
</script>

       在定义设置变量num存储prompt()语句的返回值,并让其分别在警告框,控制台和网页中输出。在这里输入数字10,效果如图所示。

       注意,若prompt()语句采用下述方式,则弹出的输入框中默认值为100。

<script>
    prompt("请输入一个数字", 100);
</script>

6 小练习

       分别打开百度与知乎,在控制台中可以看到如下画面。尝试自己在控制台中输出该画面。

  

6.1 某度

<script>
    console.log("这是一个最好的时代,\n科技的发展给予了每个人创造价值的可能性;\n这也是一个最充满想象的时代,\n每一位心怀梦想的人,终会奔向星辰大海。\n百度与你们一起仰望星辰大海,携手共筑未来!");
    console.log("%c%s", "color: red;", "百度2023校园招聘简历投递:https://talent.baidu.com/jobs/list");
</script>

        也可以通过使用反引号输出。

<script>
    console.log(`这是一个最好的时代,
科技的发展给予了每个人创造价值的可能性;
这也是一个最充满想象的时代,
每一位心怀梦想的人,终会奔向星辰大海。
百度与你们一起仰望星辰大海,携手共筑未来!`);

    console.log(`%c百度2023%c校园招聘简历投递:https://talent.baidu.com/jobs/list`, `color: red`, `color: orange`);
</script>

6.2 某乎

<script>        
    console.log('\n          _____                    _____                    _____                    _____          \n         /\\    \\                  /\\    \\                  /\\    \\                  /\\    \\         \n        /::\\____\\                /::\\    \\                /::\\    \\                /::\\    \\        \n       /:::/    /                \\:::\\    \\              /::::\\    \\              /::::\\    \\       \n      /:::/    /                  \\:::\\    \\            /::::::\\    \\            /::::::\\    \\      \n     /:::/    /                    \\:::\\    \\          /:::/\\:::\\    \\          /:::/\\:::\\    \\     \n    /:::/____/                      \\:::\\    \\        /:::/__\\:::\\    \\        /:::/__\\:::\\    \\    \n   /::::\\    \\                      /::::\\    \\      /::::\\   \\:::\\    \\      /::::\\   \\:::\\    \\   \n  /::::::\\    \\   _____    ____    /::::::\\    \\    /::::::\\   \\:::\\    \\    /::::::\\   \\:::\\    \\  \n /:::/\\:::\\    \\ /\\    \\  /\\   \\  /:::/\\:::\\    \\  /:::/\\:::\\   \\:::\\____\\  /:::/\\:::\\   \\:::\\    \\ \n/:::/  \\:::\\    /::\\____\\/::\\   \\/:::/  \\:::\\____\\/:::/  \\:::\\   \\:::|    |/:::/__\\:::\\   \\:::\\____\\\n\\::/    \\:::\\  /:::/    /\\:::\\  /:::/    \\::/    /\\::/   |::::\\  /:::|____|\\:::\\   \\:::\\   \\::/    /\n \\/____/ \\:::\\/:::/    /  \\:::\\/:::/    / \\/____/  \\/____|:::::\\/:::/    /  \\:::\\   \\:::\\   \\/____/ \n          \\::::::/    /    \\::::::/    /                 |:::::::::/    /    \\:::\\   \\:::\\    \\     \n           \\::::/    /      \\::::/____/                  |::|\\::::/    /      \\:::\\   \\:::\\____\\    \n           /:::/    /        \\:::\\    \\                  |::| \\::/____/        \\:::\\   \\::/    /    \n          /:::/    /          \\:::\\    \\                 |::|  ~|               \\:::\\   \\/____/     \n         /:::/    /            \\:::\\    \\                |::|   |                \\:::\\    \\         \n        /:::/    /              \\:::\\____\\               \\::|   |                 \\:::\\____\\        \n        \\::/    /                \\::/    /                \\:|   |                  \\::/    /        \n         \\/____/                  \\/____/                  \\|___|                   \\/____/         \n');
</script>

        同样可以通过使用反引号输出。

<script>        
    console.log(`
          _____                    _____                    _____                    _____          
         /\\    \\                  /\\    \\                  /\\    \\                  /\\    \\         
        /::\\____\\                /::\\    \\                /::\\    \\                /::\\    \\        
       /:::/    /                \\:::\\    \\              /::::\\    \\              /::::\\    \\       
      /:::/    /                  \\:::\\    \\            /::::::\\    \\            /::::::\\    \\      
     /:::/    /                    \\:::\\    \\          /:::/\\:::\\    \\          /:::/\\:::\\    \\     
    /:::/____/                      \\:::\\    \\        /:::/__\\:::\\    \\        /:::/__\\:::\\    \\    
   /::::\\    \\                      /::::\\    \\      /::::\\   \\:::\\    \\      /::::\\   \\:::\\    \\   
  /::::::\\    \\   _____    ____    /::::::\\    \\    /::::::\\   \\:::\\    \\    /::::::\\   \\:::\\    \\  
 /:::/\\:::\\    \\ /\\    \\  /\\   \\  /:::/\\:::\\    \\  /:::/\\:::\\   \\:::\\____\\  /:::/\\:::\\   \\:::\\    \\ 
/:::/  \\:::\\    /::\\____\\/::\\   \\/:::/  \\:::\\____\\/:::/  \\:::\\   \\:::|    |/:::/__\\:::\\   \\:::\\____\\
\\::/    \\:::\\  /:::/    /\\:::\\  /:::/    \\::/    /\\::/   |::::\\  /:::|____|\\:::\\   \\:::\\   \\::/    /
 \\/____/ \\:::\\/:::/    /  \\:::\\/:::/    / \\/____/  \\/____|:::::\\/:::/    /  \\:::\\   \\:::\\   \\/____/ 
          \\::::::/    /    \\::::::/    /                 |:::::::::/    /    \\:::\\   \\:::\\    \\     
           \\::::/    /      \\::::/____/                  |::|\\::::/    /      \\:::\\   \\:::\\____\\    
           /:::/    /        \\:::\\    \\                  |::| \\::/____/        \\:::\\   \\::/    /    
          /:::/    /          \\:::\\    \\                 |::|  ~|               \\:::\\   \\/____/     
         /:::/    /            \\:::\\    \\                |::|   |                \\:::\\    \\         
        /:::/    /              \\:::\\____\\               \\::|   |                 \\:::\\____\\        
        \\::/    /                \\::/    /                \\:|   |                  \\::/    /        
         \\/____/                  \\/____/                  \\|___|                   \\/____/         `);
</script>
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值