二.JS的特点
(1)交互性:它可以做的就是信息的动态交互
(2)安全性:不允许直接访问本次磁盘
(3)跨平台性:只要是可以解释JS的浏览器都可以执行,和平台无关.
三.引入方式
(1)内部脚本:
将JS代码定义在HTML页面中
运行结果:
注意:
1.可以放在任何位置,前提是要语法正确
2.数量写多少个没有限制。
总结:但是呢,一般会放在body的后面,因为我们希望一打开页面网页能够先来加载这些html代码,然后再去执行js代码,这样用户的体验感会更好,因为如果说先执行js代码的话会浪费一些时间,但是呢先加载html的话用户可以先看到效果,那么体验感会更棒。
(2)外部脚本:
将JS代码定义在外部JS文件中,然后引入到HTML页面中。
运行结果
小技巧:src下面的路径可以这样获取,更准确,更方便
四.书写语法
(1)区分大小写:与Java一样,变量名,函数名以及其他一切东西都区分大小写
(2)每行结尾的分号可有可无
(3)注释:①∥单行注释
② 多行注释:/**/
(4)大括号表示代码块
(5)定义的语句都要写在script标签里面(script标签建议写在html的body里面)
五.输出语句:
①使用 window.alert(“”);写入警告框
运行结果:
②使用document.write(“”);写入html输出
运行结果:
③使用console.log(“”);写入浏览器控制台
运行结果:
六.JavaScript的变量
简介:变量就是用来保存数据的,JavaScript是一门弱类型语言,变量可以用来存放任意的数据类型的值
七.变量名需要遵循以下原则:
①组成字符可以是任何字母,数字,下划线或者是美元符号。
②不能以数字开头
③建议使用驼峰命名
在JavaScripy中使用var来声明变量
e612ad05bc2a4091ad4c3be42746317a.png
运行结果:
2.
①作用域:全局变量:大概意思就是可以访问到代码块({}就是这个括号)以外的数据。
②.变量可以重复定义
运行结果:
八.
1.ECMAsript6新增了let关键字来定义变量,它的用法类似于var,但是声明的变量,只在let关键字所在的代码块内有效,并且呢不允许重复
①.代码例子
(只在let关键字所在的代码块内有效)
运行结果:
②不允许重复
运行结果:
2.ECMAsript6新增了const关键字,用来声明一个只读的常量,一旦声明,常量的值就不能被改变
①用来声明一个只读的常量
运行结果:
② 一旦声明,常量的值就不能被改变
运行结果:
九.
数据类型:var test=20;
JavaScript中分为:原始类型和引用类型。
五种原始类型:
①number:数字(整数 ,小数,NaN(Not aNumber))
运行结果:
②string:字符,字符串,单双引皆可。
运行结果:
③boolean:布尔。一般用来判断false,true。
运行结果:
④null:对象为空
注意:为什么会弹出一个object?而不是null?
解答:在 JavaScript 中,使用 typeof 操作符检查 null 类型时,会返回 “object”,这是 JavaScript 的一个历史遗留问题,属于语言本身的设计特点。这个问题可以追溯到 JavaScript 最初的实现中。JavaScript 最初是在较短的时间内设计和实现的,因此在语言的早期版本中存在一些不完善之处。在 JavaScript 的早期版本中,typeof null 返回的确实是 “object”,这被视为 JavaScript 的一个缺陷。null 本质上是一种特殊的原始值,但在 typeof 操作中,它被错误地识别为对象。这个行为已经成为 JavaScript 的一个特性,并且为了保持向后兼容性,不能轻易改变。
⑤undefined:当声明的变量未初始化时,改变量的默认值是undefined.
使用typeof运算符可以获取数据类型
alert(typeof age);
和=的代码例子
代码例子1
运行结果为:
注意:①
==a.会判断类型是否一样,如果不一样,则会进行类型转换b.再去比较两个值是否相等,相等则会返回true,反之则会返回false
②
===全等于,判断类型是否一样,如果一样就会返回true,反之
代码例子2
运行结果:
运行结果为:
十.运算符
一元运算符:++,–
算术运算符:+,-,*,/,%
赋值运算符:=,+=,-=…
关系运算符:>,<,>=,!=,,=
逻辑运算符:&&,‖,!
三元运算符:条件表达式?true_value:false_value
代码例子1
运行结果为:
注意:按照字符串的字面值,转为数字,如果字面值不是数字,则转为NaN.
代码例子2
运行结果为:
类型转换: 其他类型转换为number
1.String:按照字符串的字面值,转为数字,如果字面值不是数字,则转为NaN 一般使用parseInt
2.boolean:true转为1 false转为0.
其他类型转换为Boolean:
1.nember:0和NaN转换为false,其他的数字转换为true
2.String:空字符串转为false,其他的字符串转为true
3.null:false
4.undefined:false
十一.函数 函数定义方式一:
函数(方法)是被那些设计为执行特定任务的代码块。
①定义:JavaScript函数通过function关键字进行定义,语法为:
function functionName(参数1,参数2…){
要执行的代码
}
注意:
①形式参数不需要类型。因为JavaScript是弱语言。
②返回值不需要定义类型,可以在函数内部直接使用return返回即可。
function add(a,b){
return a+b;
}
②调用:函数名称(实际参数列表);
let result =add(1,2);
函数定义方式二:
var functionName=funtion(参数列表){
}
var add=function(a,b){
return a+b;
}
调用:JS中,函数调用可以任意传递个数参数
let result=add(1,2,3);
十二.Array
1.JavaScript对象:
Array:
String:
自定义对象:
定义:
①var 变量名=new Array(元素列表);方式一
var arr =new Array(1,2,3);
②var 变量名=[元素列表];方式二
var arr =[1,2,3];
最后
我可以将最近整理的前端面试题分享出来,其中包含HTML、CSS、JavaScript、服务端与网络、Vue、浏览器、数据结构与算法等等,还在持续整理更新中,希望大家都能找到心仪的工作。
篇幅有限,仅展示部分截图: