javascript知识点总结(1)
### JavaScript基础知识点总结 #### 变量与命名规则 - **定义**:变量是用于存储数据的内存区域。 - **命名规则**: - 可以使用字母、数字、下划线`_`以及美元符号`$`。 - 不能使用JavaScript中的关键字作为变量名。 - 变量名不能以数字开头。 - 区分大小写。 - **命名规范**: - 尽可能使用英语单词,并确保名称能够清晰表达变量的含义。 - 驼峰命名法:首单词首字母小写,之后每个单词首字母大写,如`firstName`。 #### 数据类型 - **基本类型**:主要包括六种基本类型:`String`(字符串)、`Number`(数字)、`Boolean`(布尔值)、`Null`(空值)、`Undefined`(未定义)、`Symbol`(符号)。 - **引用类型**:主要是`Object`(对象),包括数组、函数等复杂数据结构。 #### 数据类型转换 - **转换为Number**: - `parseInt`:将字符串转换成整数,遇到非数字字符则停止。 - `parseFloat`:将字符串转换成浮点数,遇到非数字字符则停止。 - `Number`:尝试将任何类型的值转换为数字,无法转换时返回`NaN`。 - **转换为String**: - 使用`String()`函数进行转换。 - **转换为Boolean**: - `Boolean()`函数:将0、`null`、`undefined`转换为`false`;其他值转换为`true`。 #### 运算符 - **赋值与比较运算符**: - `=`:赋值运算符,将右侧的值赋给左侧的变量。 - `==`:宽松比较,会先尝试类型转换再比较。 - `===`:严格比较,不进行类型转换直接比较值和类型是否相同。 - **逻辑运算符**: - `&&`:逻辑与,当两边均为真时返回真,否则返回假。 - `||`:逻辑或,当两边均为假时返回假,否则返回真。 - **自增/自减运算符**: - `++`/`--`:用于对数值进行加一或减一操作。 - 不带入运算时:`++i` 或 `i++` 表示对变量`i`的值加一。 - 带入运算时: - `i++` 或 `i--`:先使用变量的当前值,然后加一或减一。 - `++i` 或 `--i`:先对变量的值加一或减一,然后使用新值。 #### 流程控制语句 - **条件结构**: - `if`语句:根据条件执行特定代码。 - `if...else`语句:条件成立时执行一条代码块,否则执行另一条代码块。 - `if...else if...else`语句:可以检查多个条件并执行相应的代码块。 - `switch`语句:基于不同情况执行不同的代码块。 - **循环结构**: - `while`循环:先判断条件再执行代码块。 - `do...while`循环:先执行一次代码块,然后判断条件。 - `for`循环:可以指定初始化、条件和迭代步骤。 - **跳转语句**: - `break`:跳出整个循环结构。 - `continue`:跳过本次循环剩余的部分,直接进入下一次循环。 #### 函数 - **概念**:由事件驱动或被调用时执行的可重复使用的代码块。 - **声明方式**: - 声明式函数:`function 函数名(参数列表) { 函数体 }` - 表达式函数:`var 变量名 = function(参数列表) { 函数体 }` - 匿名函数:没有名称的函数,通常作为表达式的值。 - **参数**: - 形参:函数定义时指定的参数。 - 实参:调用函数时传递的实际值。 - **返回值**: - 使用`return`关键字返回值或表达式的结果。 - **作用域**: - 全局作用域:在函数外部定义的变量。 - 局部作用域:在函数内部定义的变量,仅在该函数内有效。 - **声明提升**: - 变量和函数声明会被提升至当前作用域的顶部。 - 函数声明的提升包括函数体。 #### 递归 - **定义**:函数调用自身的过程。 - **注意**:必须有递归终止条件,否则会导致无限递归。 #### 内置对象 - **数组(Array)**: - **声明方式**: - `var 数组名 = [];` - `var 数组名 = [元素1, 元素2];` - `var 数组名 = new Array();` - `var 数组名 = new Array(元素数量);` - `var 数组名 = new Array(元素1, 元素2);` - **属性**: - `length`:表示数组中元素的数量。 - **遍历方法**: - `for`循环 - `for...in`循环 - `forEach`方法 - **API**: - **增加元素**: - `push(元素)`:在数组末尾添加元素。 - `unshift(元素)`:在数组开头添加元素。 - `splice(索引, 0, 元素)`:在指定索引位置插入元素。 - **删除元素**: - `pop()`:移除数组最后一个元素。 - `shift()`:移除数组第一个元素。 - `splice(索引, 数量)`:从指定索引位置开始移除指定数量的元素。 - **查找元素**: - `indexOf(元素)`:从前往后查找元素首次出现的位置。 - `lastIndexOf(元素)`:从后往前查找元素首次出现的位置。 - **截取数组**: - `slice(起始索引, 结束索引)`:获取从起始索引到结束索引前的元素构成的新数组。 - **连接数组**: - `concat(数组)`:连接两个或多个数组。 - `join(连接符)`:将数组的所有元素合并成一个字符串。 - **排序**: - `reverse()`:反转数组元素的顺序。 - `sort([比较函数])`:按某种顺序对数组进行排序。 - **高级API**: - `map(处理函数)`:创建一个新数组,其结果是调用提供的函数处理原数组的每个元素。 - `every(测试函数)`:测试数组中的所有元素是否都符合条件。 - `some(测试函数)`:测试数组中是否有至少一个元素符合条件。 - `filter(测试函数)`:创建一个新数组,包含通过了测试函数的所有元素。 - **字符串(String)**: - **声明**: - `var str = "string";`:字符串字面量。 - `var str = new String("string");`:构造函数创建字符串对象。 - **属性**: - `length`:表示字符串中的字符数量。 - **常用API**: - `charAt(index)`:获取指定索引位置的字符。 - `indexOf(子串)`:查找子串首次出现的位置。 - `lastIndexOf(子串)`:查找子串最后一次出现的位置。 - `concat(字符串)`:连接两个或多个字符串。 - `split(分隔符)`:将字符串分割成数组。 - `toUpperCase()`:将字符串转换为全大写形式。 - `toLowerCase()`:将字符串转换为全小写形式。 以上内容概述了JavaScript的一些基础知识点,包括变量的使用、数据类型及其转换、运算符、流程控制语句、函数、递归以及数组和字符串的操作。这些知识点是学习JavaScript的基础,对于理解和编写有效的JavaScript代码至关重要。
变量:内存中数据存储区域
变量名:
命名规则:(1)可以使用字母、数字、下划线、$
(2)不能使用关键字
(3)不能用数字开头
(4)区分大小写
命名规范:(1)引用英文单词,见文知意
(2)驼峰命名法:首单词小写,其他单词首字母大写其他字母小写
变量值
数据类型
基本类型:String,Number,Boolean,Null,Undefined,Symbol
引用类型:Oblect
数据类型转换:
==>Number
parseInt:转换为整数,遇到不兼容格式时停止
parseFloat:转换为浮点数,只能有一个小数点遇到不兼容格式时停止
Number:有不兼容格式时直接返回NaN
==>String
String()
==>Boolean
Boolean():0,null,Undefined==>false
非0非null==>true
运算:
=/==/===:
=:右边值赋给左边
==:可以先转换类型,在判断是否相等
===:不转换类型,判断是否相等
&&/||:
||:同F为F,第一个条件为T时整个结果为T
++/--:
不代入运算:++i/i++:i=i+1
带入运算时
i++/i--:先代入,后自增自减
++i/--i:先自增自减,后代入
流程控制语句:
条件结构:
if(条件){//代码}
if(条件){条件成立执行}else{条件不成立执行}
if(条件){}else if(){}...else{}
switch(n){case: break;...defaulte: }
n与case比较,若相等执行case下的代码块,若都不相等,执行defalute
循环结构:
while(条件){代码块}:先判断后执行,循环次数最少为0
do{代码块}while(条件):先执行后判断,循环次数最少为1
for(变量初始化;条件;变量更新){}:
跳转语句:
break:跳出整个循环结构
continue:跳出本次循环,判断条件执行循环
函数:
概念:由事件驱动或被调用时执行的可重复使用的代码块
声明:
(1)function 函数名(参数){函数体}
(2)var 变量名=function (参数){函数体}
(3)没有函数名为匿名函数
参数
形参:函数声明时的参数
剩余8页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 排球场地的排球识别 yolov7标记
- DOTA 中的 YOLOX 损失了 KLD (定向物体检测)(Rotated BBox)基于YOLOX的旋转目标检测.zip
- caffe-yolo-9000.zip
- Android 凭证交换和更新协议 - “你只需登录一次”.zip
- 2024 年 ICONIP 展会.zip
- 微信小程序毕业设计-基于SSM的电影交流小程序【代码+论文+PPT】.zip
- 微信小程序毕业设计-基于SSM的食堂线上预约点餐小程序【代码+论文+PPT】.zip
- 锐捷交换机的堆叠,一个大问题
- 微信小程序毕业设计-基于SSM的校园失物招领小程序【代码+论文+PPT】.zip
- MATLAB《结合萨克拉门托模型和遗传算法为乐安河流域建立一个水文过程预测模型》+项目源码+文档说明