JS中的面试题(1)
JS 基础知识
- JS 的三大组成部分是什么?
- JS 中的变量命名规则和规范是什么?
- JS 的基本数据类型有哪些?
- JS 中检测数据类型的方法是什么, 根据目前所学, 有多少种返回值分别代表什么意思?
- JS 中转换数据类型中转数值有多少种方式?
- JS 中转换数据类型中转布尔的时候有多少种数据转换成 false?
- JS 中的三个逻辑运算符是什么, 分别表示什么意思?
- JS 中前置 ++ 和 后置 ++ 的区别是什么?
JS 条件分支
- switch 中是否可以不写 break?
- switch 中的 default 是什么意思, 类似于什么? 什么时候执行?
- 三元表达式在书写时的注意点是什么?
- 三元表达式的优点是什么?
- 只有一行代码的 if 分支语句除了能够利用三元表达式优化之外, 还有什么优化的方式? 原理是什么?
JS 循环语句
- while 循环和 do while 循环的区别?
- 循环嵌套中需要注意什么?
- 循环中 break 和 continue 关键字的区别分别是什么?
- 利用循环判断一个数字是不是水仙花数的逻辑是什么?
JS 的函数
- 函数的参数分几种, 分别是什么意思?
- 函数的返回值是什么意思?
- 声明式函数和函数表达式有什么区别?
- 什么是作用域?
- 什么是变量的预解析?
- 变量的赋值规则是什么?
JS 的对象和数组数据类型
- 如何创建对象数据类型, 如何创建数组数据类型?
- 如何遍历对象 和 遍历数组?
- 对象的增删改查语法是什么?
- 数组的 length 索引 分别是什么意思?
JS 的对象和数组数据类型 二
- 手写 冒泡排序?
- 手写 选择排序?
- 数据类型之间的区别? (存储; 赋值; 比较; 传参)
数组的常用方法
- push; pop; unshift; shift;
- reverse; sort; splice; slice; concat; join; indexOf; lastIndexOf;
- forEach; map; filter; find; findIndex; every; some; reduce;
字符串的常用方法
- charAt; charCodeAt; toLowerCase; toUpperCase;
- substr; substring; slice;
- concat; split; indexOf; lastIndexOf;
- trim; trimStart(trimLeft); trimEnd(trimRight);
- includes; startsWith; endsWith; repalce;
JS 的 BOM
- 浏览器的滚动事件
- 如何获取浏览器的滚动距离? 有几种方式? 区别是什么?
- 三种本地存储的区别是什么
JS 的 DOM 操作
- 获取页面元素有几种常用方式, 分别是什么意思, 参数是什么, 返回值是什么 ?
- JS 如何操作元素 样式 ?
- JS 如何操作元素 类名 ?
- JS 如何操作元素 属性 ?
- JS 操作节点有哪些方法 ? (创建节点, 删除节点, 插入节点 等)
- 获取节点的方式(获取子级/兄弟级/父级)
- 如何获取一个元素的所有属性节点?
- 节点属性中的 nodeType/nodeName/nodeValue 代表什么, 返回什么?
- 如何获取元素的非行内样式