JavaScript-基础

本文介绍了JavaScript语言的基础知识,包括其在客户端的运行环境、组成部分、弱类型特性、编程特点(如脚本语言、解释性、安全性)、引入方式、输出语句、变量声明、基本数据类型以及typeof和相等运算符的区别。
摘要由CSDN通过智能技术生成

一、JavaScript概述
JavaScript语言主要是完成页面的数据验证,因此运行在客户端,需要运行浏览器来进行解析。

ECMAScript是js的一个标准。

一个完整的js是由ECMAScript,Dom,Bom组成的。

JS是弱类型,由值决定变量类型,变量可被重新赋值,后者会覆盖前者。

JavaScript的特点:

        1.是一款脚本语言

                编程语言需要编译,脚本语言不需要编译,浏览器可直接识别

        2.是解释性语言

                根据代码顺序逐一解释,某一行报错,会从这一行代码开始报错,不影响上面代码,此为JS阻塞

        3.是一种安全性语言

                具有web安全特性,不允许访问本地硬盘,也不允许对网络文件进行修改,只能通过浏览器进行浏览或者动态交互。

        4.跨平台性

                PC端,APP端,小程序端,三端皆可使用

二、JavaScript的引入方式
1.内部引入
在<head></head>或 <body></body>中,也可放在 <body></body>后

放在<head></head>会造成Dom阻塞

2.外部引入
<script src = "路径"></script>

注:引入方式可以同时存在,但不能两者互相嵌套

        外部引入的标签内不能写JS代码

3.行内引入
eg:<a href="javascript:alert('hello')"></a>

三、输出语句
1.弹窗工具 alert( );

2.页面输出工具 document.write(),可识别标签

3.控制台输出工具 console.log()

输出语句的作用:

输出变量及某些内容的值
排错
四、变量
声明变量的关键字是var,var关键字可以省略,但是一般不省略,以分号结尾。

变量命名规范:

变量必须以字母、 $ 和 _ 符号开头

其它字符可以是字母、下划线、美元符号或数字。

变量名称对大小写敏感(y 和 Y 是不同的变量)

尽量使用驼峰命名法

不能是关键字和保留字符。

js的变量名是严格区分大小的。

js中可以声明同名变量,后者会覆盖前者

五、基本数据类型
number
string
boolean
        值为true或false

null
        作用:1.当不确定要定义的数据类型时,将变量的值赋为null

                   2.清空变量

undefined
null与undefined的区别:

null表示一个被人为地赋予或设置为为空的值。它是一个表示空对象指针的特殊值。即变量被赋值为null。

undefined表示一个声明了但未被赋值的变量

六、检测当前变量的数据类型
typeof

语法:

typeof 变量名

typeof(变量名)  

注:typeof null的值为object,这是一个历史遗留问题,最初 JavaScript 中的 typeof 操作符只有六种返回值: “undefined”、“boolean”、“number”、“string”、“object” 和 “function”。当对 null 使用 typeof 时,由于 null 被认为是一个空对象指针,所以返回值是 “object”。

实际上,null 是一个表示空值的特殊关键字,并不是对象。这是 JavaScript 设计上的一个错误,但由于兼容性和历史原因,该错误一直被保留了下来。尽管如此,我们仍然可以通过使用严格相等运算符(===)来判断一个值是否为 null。

七、双等(==)和三等(===)的区别 
双等(==)叫做相等运算符

三等(===)叫做严格相等运算符

双等(==)是宽松相等比较,它会进行类型转换后再比较值。如果两个操作数类型不同,JavaScript会尝试将它们转换为相同的类型,然后再比较。

console.log(1 == "1"); // 输出 true (进行了类型转换,将字符串"1"转换为数字1,然后比较值)
console.log(null == undefined); // 输出 true (进行了类型转换,null和undefined都被转换为相同的值) 

三等(===)是严格相等比较,它不会进行类型转换,只有在两个操作数严格相等时才返回true。推荐使用三等(===)进行严格相等比较,以避免类型转换带来的意外结果。

console.log(1 === "1"); // 输出 false (不进行类型转换,数字1和字符串"1"不是严格相等) console.log(null === undefined); // 输出 false (null和undefined不是严格相等) 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值