To be a struggling Rick for everything~


啥是JavaScript

题外话,JavaScript并非java的简版,这在核心技术里第一章就提到过~
java与JavaScript除了在语法方面丢丢类似(实际上它的语法风格与Self及Scheme较为接近)之外,毫无关系!据说是管理层希望它外观看起来像Java,因此取名为JavaScript……

JavaScript是一种属于网络的脚本语言,是动态类型、弱类型、基于原型的语言

  1. JavaScript 是一种轻量级的编程语言。

  2. JavaScript 是可插入 HTML 页面的编程代码。

  3. JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。

JavaScript与HTML的结合方式

首先,需要注意

  1. 内部插入
<script type="text/javascript">
XXXX
</script>
  1. 外部引入
<script src="xxx.js"></script>

xxx代指你的js文件名

直接在js文件里写代码即可,可类比css文件的引入方式

js文件在HTML中的位置

理论上讲,js文件可以放在HTML文件的任何位置。
但出于规范化的考虑,还是做做文章的好~
浏览器对于HTML文件的解释是自上而下的,而我们需要根据js文件的具体类型进行选择。

  1. 进行页面初始化的js内容,必须放在里面
  2. 其他的文件放在最后,以防页面未完成加载,DOM节点加载不到导致报错

图片出处https://www.jianshu.com/p/6171d432b78d

注释方式

如同大多数语言一样,js的注释也不会出现在可执行的结果中
注释分为单行注释和多行注释两种:

//我是单行注释
/*
我是多行注释
注释语法和java一样哦~
*/

变量

命名规范:

  1. 变量名的开头必须是字母或下划线或者美元符

与java要求相同,在java核心卷Ⅰ中有这种说法:变量名开头必须是“字母”,但这个字母的范围很广,包含大小写字母、下划线、美元符,以及在某种语言中表示字母的任何Unicode字符

2.其后可以是任意多个字母、下划线、美元符、数字

  • notes
    ** 不推荐在变量名开头出现下划线或美元符
    ** 变量名称对于大小写敏感,即A和a是不一样的
    ** 不可以用js的关键字或者保留字作为变量名

定义的关键字

  1. var
    可以保存任何数据类型的值,但是作用域只能是全局或者是整个函数块

语法格式:

var 变量名;

eg:

var age=18,name="CuiHua";

通常教程中所见关键字,但是并不推荐使用……

  1. 定义的变量没有块作用域
    2. 变量提升
document.write(i);
var i=0;

网页显示 undefined


2. const
定义常量,在声明时必须初始化

const 变量名;

3.let
存在块级作用域,没有变量提升,暂时性死区,不允许重复声明。

  • 块级作用域:
  • 不存在变量提升
document.write(i);
let i=0;

JavaScript入门笔记day1的更多相关文章

  1. JavaScript基础——JavaScript入门(笔记)

    JavaScript入门(笔记) JavaScript是一种轻量级.解释型的Web开发语言,该语言系统不是很庞杂,简单易学.由于所有现代浏览器都已嵌入JavaScript引擎,JavaScript源代 ...

  2. javascript入门笔记3-dom

    1.通过ID获取元素 document.getElementById("id") <!DOCTYPE HTML> <html> <head> & ...

  3. JavaScript入门笔记

    第一章 JavaScript语法 1.1 初识JavaScript 1.3 数据类型 1.4 string和boolean类型 1.5 算数操作符 第二章 JavaScript流程控制语句 2.1 循 ...

  4. JavaScript 入门笔记

    JavaScript   1.JS和DOM的关系 浏览器有渲染html代码的功能,把html源码在内存里形成一个DOM对象,就是文档对象 浏览器内部有一个JS的解释器/执行/引擎,如chrome用v8 ...

  5. JavaScript入门笔记(一)

    JavaScipt 2.1 javascript的组成部分 ECMAScript: 它是整个 javascript 的核心,包含(基本语法.变量.关键字.保留字.数据类型.语句.函数等等)DOM:文档 ...

  6. javascript入门笔记9-认识DOM

    认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 将HTML代码分 ...

  7. javascript入门笔记8-window对象

    History 对象 history对象记录了用户曾经浏览过的页面(URL),并可以实现浏览器前进与后退相似导航的功能. 注意:从窗口被打开的那一刻开始记录,每个浏览器窗口.每个标签页乃至每个框架,都 ...

  8. javascript入门笔记7-计时器

    计时器 语法: setInterval(代码,交互时间) 参数说明: 代码:要调用的函数或要执行的代码串. 交互时间:周期性执行或调用表达式之间的时间间隔,以毫秒计(1s=1000ms). 例子: & ...

  9. javascript入门笔记6-内置对象

    1.Date 日期对象 日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒). 定义一个时间对象 : var Udate=new Date(); 注意:使用关键字new,Date() ...

  10. javascript入门笔记5-事件

    1.继续循环continue; continue的作用是仅仅跳过本次循环,而整个循环体继续执行. 语句结构: for(初始条件;判断条件;循环后条件值更新) { if(特殊情况) { continue ...

随机推荐

  1. Typecho去除更新检测和后台日志

    Typecho去除官方日志 打开 admin/index.php,找到下面的代码并删除,在 93-102 行. 代码: <div class="col-mb-12 col-tb-4&q ...

  2. 大量小文件不适合存储于HDFS的原因

    1.小文件过多,会过多占用namenode的内存,并浪费block. - 文件的元数据(包括文件被分成了哪些blocks,每个block存储在哪些服务器的哪个block块上),都是存储在namenod ...

  3. CTF-CRYPTO-ECC(1)

    CTF-CRYPTO-ECC(1) 椭圆加密 1.简介 椭圆曲线密码学(Elliptic curve cryptography),简称 ECC,和RSA.ElGamel 算法等类似,是一种公开秘钥加密 ...

  4. 一个ABAQUS model需要的Component

    component of abaqus model Abaqus模型由几个不同的组件组成,它们共同描述了要分析的物理问题. a abaqus model 至少要有: discrete goemtry ...

  5. 启动本地node服务器报错: Access denied for user ‘root‘@‘localhost‘ (using password: YES)

    背景:今天启动node服务时直接报错,顿时一激灵,之前(几个月前哈哈)明明好好的.主要问题就是在连接数据库上,我登上mysql瞅瞅有没有问题,当要输入密码时,emmm, 很好, 忘记root密码了,于 ...

  6. 解决 Mac(M1/M2)芯片,使用node 14版本

    前言 nvm 在安装 Node.js v14.21.3 时,报错: nvm install 14 Downloading and installing node v14.21.3... Downloa ...

  7. linux php安装mongodb 扩展

    下载扩展 首先从这个网站选择适合你当前 php 版本的的 mongodb 扩展 https://pecl.php.net/package/mongodb wget https://pecl.php.n ...

  8. CSAPP学习笔记——chapter8 异常控制流

    CSAPP学习笔记--chapter8 异常控制流 简介 异常控制流(Exceptional Control Flow,ECF)是在计算机系统中处理不寻常或异常情况的一种机制.它允许系统跳出正常的顺序 ...

  9. 导入SpaceClaim的iges模型尺寸被放大1000倍的问题

    问题 ANSYS APDL 和 Workbench 联合仿真时,导入 SpaceClaim 的 .iges 模型尺寸被放大 1000 倍数. 如 APDL 生成的尺寸为 10 mm(注:此处的 mm ...

  10. unity 多层叠加的BillBoard特效转序列帧特效降低overdraw