JavaScript基础知识点 与 基础面试题

  • String:字符串类型。用""和’'包裹的内容,称为字符串。

  • Number:数值类型。可以是小数,也可以是正数。

  • boolean:真假,可选值true/false。

  • Object:(复杂数据类型)

  • Null:表示为空的引用。var a = null;

  • Undefined:未定义,用var声明的变量,没有进行初始化赋值。var a;

7. JavaScript对象
  • JavaScript 对象是拥有属性和方法的数据,是变量的容器。

  • 对象:是封装一个事物的属性和功能的程序结构,是内存中保存多个属性和方法的一块存储空间。

  • JavaScript中所有事物都是对象:数字、字符串、日期、数组等。

  • JavaScript对象可以是字面量创建、分配给变量,数组和其他对象的属性、作为参数传递给函数、有属性和作为返回值。

用字面量创建:

function MyFun(){

};

分配给其他对象的变量,数组和属性:

var myFun = function(){

};

myArray.push(function(){

});

myObject.myFun = function(){

};

作为参数传递给其他函数:

function myFun(someFunc){

someFunc();

}

myFunc(function(){

});

有属性:

var myFunc = function(){

};

作为返回值:

function myFunc(){

return function(){

};

}

在JavaScript中定义对象有5种方式:

  • 基于已有对象扩充其属性和方法

  • 工厂方式

  • 构造函数方式

  • 原型(“prototype”)方式

  • 动态原型方式

JS 中的对象类型:

  • 内置对象(静态对象):js本身已经写好的对象,我们可以直接使用不需要定义它。

常见的内置对象有 Global、Math(它们也是本地对象,根据定义每个内置对象都是本地对象)。

  • 本地对象(非静态对象):必须实例化才能使用其方法和属性的就是本地对象。

常见的本地对象有 Object、Function、Data、Array、String、Boolean、Number、RegExp、Error等

  • 宿主对象:js运行和存活的地方,它的生活环境就是DOM(文档对象模式)和BOM(浏览器对象模式)。
8. JavaScript函数

使用函数前要先定义才能调用,函数的定义分为三部分:函数名,参数列表,函数体

定义函数的格式:

function 函数名([参数1,参数2…]){

函数执行部分;

return 表达式;

}

函数有三种定义方法:

  • 函数定义语句

  • 函数直接量表达式

  • Function构造函数

函数有四种调用模式:

  • 函数调用模式(通过函数调用)

  • 方法调用模式(通过对象属性调用)

  • 构造函数模式(如果是作为构造函数来调用,那么this指向new创建的新对象)

  • 函数上下文(借用方法模式:它的this指向可以改变,而前三种模式是固定的);函数上下文就是函数作用域;基本语法:apply 和 call 后面都是跟两个参数。)

在javascript函数中,函数的参数一共有两种形式:(实际参数与形式参数)

  • 形参:在函数定义时所指定的参数就称之为“函数的形参”。

  • 实参:在函数调用时所指定的参数就称之为“函数的实参”。

9. 运算符

算术运算符:主要是用来进行JavaScript中的算术操作。(+、-、*、/、%、++、--)

赋值运算符:=用于给JavaScript 变量赋值,其作用就是把右侧的值赋给左侧的变量。

关系运算符:用于进行比较的运算符。主要有小于(<)、大于(>)、等于(==)、大于等于(>=)、小于等于(<=)、不等(!=)、恒等(===)、不恒等(!==)

逻辑运算符:逻辑运算符通常用于布尔值的操作,返回结果是一个布尔类型,一般和关系运算符配合使用,

有三个逻辑运算符:逻辑与(AND)、逻辑或(OR)、逻辑非(NOT)。

字符串连接运算符:是用于两个字符串型数据之间的运算符,它的作用是将两个字符串连接起来。

在JavaScript中,可以使用 ++= 运算符对两个字符串进行连接运算。

三目操作符(条件运算符):? 根据不同的条件,执行不同的操作/返回不同的值。

10. JavaScript条件语句

分为四种条件语句:

If 语句:只有当指定条件为true时,使用该语句来执行代码

if-else 语句:当条件为true时执行代码,当条件为false时执行其他代码

if-else if-else 语句:使用该语句来选择多个代码块之一来执行;

switch 语句:同上,switch的工作原理呢?

首先设置表达式n(通常是一个变量),随后表达式的值会与结构中的每个case值作比较;

如果存在匹配则该关联代码块执行;

然后使用break来阻止代码自动的向下一个case运行;

default关键词来规定匹配不存在时做的事情。


JS基础面试题:


需要领取:【点击这里领取面试题资料

  • 介绍JavaScript的基本数据类型

  • 说说写JavaScript的基本规范?

  • jQuery使用建议

  • Ajax使用

  • JavaScript有几种类型的值?你能画一下他们的内存图吗?

  • 栈和堆的区别?

  • Javascript实现继承的几种方式

  • Javascript创建对象的几种方式?

  • Javascript作用链域

  • 谈谈this的理解

  • eval是做什么的?

  • 什么是window对象? 什么是document对象?

  • null,undefined的区别?

  • [“1”, “2”, “3”].map(parseInt) 答案是多少?

  • 关于事件,IE与火狐的事件机制有什么区别? 如何阻止冒泡?

后话

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

对于面试,说几句个人观点。

面试,说到底是一种考试。正如我们一直批判应试教育脱离教育的本质,为了面试学习技术也脱离了技术的初心。但考试对于人才选拔的有效性是毋庸置疑的,几千年来一直如此。除非你有实力向公司证明你足够优秀,否则,还是得乖乖准备面试。这也并不妨碍你在通过面试之后按自己的方式学习。
其实在面试准备阶段,个人的收获是很大的,我也认为这是一种不错的学习方式。首先,面试问题大部分基础而且深入,这些是平时工作的基础。就好像我们之前一直不明白学习语文的意义,但它的意义就在每天的谈话间。

所谓面试造火箭,工作拧螺丝。面试往往有更高的要求,也迫使我们更专心更深入地去学习一些知识,也何尝不是一种好事。

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值