JS 基础review

JS的组成:ECMAScript(JS语法)、DOM(页面文档对象模型)、BOM(浏览器对象模型)。

三种书写位置,行内、内嵌和外部。注意,在html中推荐使用双引号,JS中推荐使用单引号。 行内式,直接写到元素里面, 如: <input type = “button” value = “点我试试” onclick = “alert (‘Hello cici’)” /> 内嵌式,将代码写到

注释,单行(mac: command + / win: ctrl + /), 多行(mac: option + shift + a win: shift + alt + A)。

输入输出语句: prompt(‘弹出输入框,在这里可以输入你想输入的’); alert(‘弹出警示框,展示给你看的’); console.log(‘控制台输出,是给程序员看的’);

变量(我们需要保存一些数据,需要用到变量)
① 变量就是用于存放数据的容器,我们通过变量名来获取数据,也可以修改数据。 通俗来说,变量就是一个装东西的盒子。 变量的本质是,程序在内存中申请的一块用来存放数据的空间。
② 变量的使用步骤:先声明,再赋值。如: var age; 这里是声明了一个名称为“age”的变量 age = 18;把18赋值给变量age ③ var 是JS的一个关键字,用来声明变量的,声明后计算机会自动为变量分配内存空间。注意变量也有层叠性,因为代码是从上往下执行的。
④ 变量的初始化: var age = 18; 声明变量的同时赋值18
⑤ 注意命名规范,命名不规范,自己两行泪。
⑥ JS中八进制前面加“0”,十六进制前面加“0x”.
⑦简单数据类型:Number\String\Boolean\Undefined\Null 复杂数据类型:object
⑧ 拼接字符串,口诀引引加加,’++’
⑨ var age = prompt(‘请输入您的年龄’); // prompt取过来的值是字符型的,typeof测出来的 使用表单、prompt获取的数据默认是字符串类型的,不能进行简单的运算,利用隐式转换可以实现想要的效果,如: console.log(num + ‘’); parseInt得到整数 parseFloat得到小数或浮点数
⑩ 与数字有关的想一下要不要转换。

浮点数不能直接进行比较是否相等。

前置递增运算符 ++写在变量前面,先加一,后返回值。后置递增是先返回原值,后自增一。开发时,大多使用后置,并且代码独占一行。

= 赋值 把右边给左边 == 判断 判断两边值是否相等(注意此时有隐式转换)
=== 全等 判断两边的值和数据类型是否完全相同

与 && ,有假则假; 或 || ,有真则真;非 !

逻辑与短路运算,如果表达式1结果为真,则返回表达式2;如果表达式1为假,那么返回表达式1。逻辑或短路运算,如果表达式1结果为真,则返回表达式1;如果表达式1结果为假,则返回表达式2。

if(条件表达式){ 执行语句 } 执行思路,如果if里面的条件表达式结果为true,则执行大括号的执行语句,反之执行if语句后面的代码。

if (条件表达式) { // 执行语句1 } else { // 执行语句2 } 如果表达式为真,则执行语句1,否则执行语句2。语句1和语句2最终只能有一个执行,else后直接跟大括号。

闰年的判断:能被4整除并且(||)不能整除100的,或者(&&)能被400整除的,是闰年。if (year % 4 == 0 || year % 100 !== 0 && year % 400 == 0)

if else if 语句就是利用多个条件来选择不同的语句执行,得到不同的结果,是一个多选一的过程。典型的判断成绩案例。
if (条件表达式) {
// 执行语句1
} else if (条件表达式2){
// 执行语句2
} else if (条件表达式3){
// 执行语句3
} else {
// 执行最后的语句 }

三元表达式:条件表达式 ? 表达式1 : 表达式2 ; 如果条件表达式结果为真,则返回表达式1的值,为假则返回表达式2的值。参考数字补0案例。

利用表达式里的值和case后面的选项值匹配,如果能匹配(全等)上,就执行该case里的语句,反之,则执行default里面的语句。在开发里面,我们常把表达式写成变量,而不是直接写一个值。查询水果案例。
switch(表达式) {
case value1:
执行语句1;
break;
case value2:
执行语句2;
break;

default:
执行最后的语句;
}

switch语句适合特定的值,变化的值适合if else if,常用于范围判断。switch语句进行条件判断后直接执行到程序的条件语句,效率更高,iei有几种条件就得多判断几次。当分支较少时,iei的执行效率高,当分支多时,switch效率高,而且结构更清晰。

双层for循环,外层循环循环一次,里面的循环全部执行。

while循环,当条件表达式结果为true时则执行循环体,否则提出循环。里面应该有计数器,类似num++,初始化变量,还应该有操作表达式,完成计数器的更新,防止死循环。
while(条件表达式)
{
//循环体
}

do while先执行一次循环体再判断条件,如果表达式为真,则继续执行循环体,否则退出循环。
do {
//循环体
}while(条件表达式)

for、while、do while很多情况下都可以互相替代使用,特别是与数字有关的,但我们更喜欢用for。

continue关键字,退出当前次的循环,继续执行剩余次数循环。break关键字用于立即跳出整个循环,循环结束。

数组就是一组数据的集合,存储在单个变量下的一种方式。 var arr = []; 是一种字面量定义数组的方法。 var arr = new Array(); 这是调用数组构造函数生成的数组。 二者的区别是,字面量是直接在内存开辟一个存储字段,相对简单不耗资源。而用new关键字去内存开辟一个存储地址,耗资源耗内存。

函数使用:先声明,再调用。不调用不执行 。
function 函数名()
{
//函数体
}

我们可以利用函数的参数实现函数重复不同的代码。在声明函数的小括号里是形参,调用函数的小括号里是实参。形参可以看作是不用声明的变量。

函数的参数可以有很多个,但返回值只有一个,如果要输出多个,可以通过数组或者对象进行设计。函数只是实现某种功能,最终的结果需要返回给函数的调用者函数名()通过return实现的。只要函数遇到return,就把后面的结果返回给函数的调用者。在我们的实际开发里,我们常使用一个变量去接受函数的返回结果,使使用更简单。

函数的两种声明方式, 1、利用函数关键字自定义函数:function fn(){}fn(); 2、利用函数表达式:var 变量名 = function(){};

对象:是由属性(事物的特征)和方法(事物的行为)组成的,是一组无序的相关属性和方法的集合。
使用对象有三种方法:
1、调用对象的属性 对象名.属性名 ,这个 . 相当于“的” console.log(obj.uname);
2、对象名[‘属性名’] console.log(obj[‘age’]);
3、调用对象的方法 对象名.方法名() obj.sayHi();

为什么需要构造函数?
因为之前学的创建对象的方式一次只能创建一个对象,如果需要多个同样类型的对象就要重复创建,里面很多属性和方法都是大量相同的,因此我们可以构造函数,这个构造函数里封装的不是普通代码而是对象,所以,构造函数就是把对象里面一些相同的属性和方法封装到函数里面。

构造函数注意点:
①构造函数名字首字母要大写,调用时必须使用new
②不需要return就能返回结果
③属性和方法前面必须加上 this

for in 遍历我们的对象,for ( 变量 in 对象 )。
例如:
for ( var k in obj)
{
console.log( k ); // k是变量,输出得到的是属性名
console.log ( obj [k] ); // obj [k] 得到的是属性值
}

获取数组索引:indexOf ( 数组元素 ),作用就是返回该数组元素的索引号,如果在数组里找不到,则返回“ -1 ”。

数组去重核心算法:遍历数组,拿旧数组元素去查询新数组(利用 .indexOf ),如果该元素在新数组里没有出现过,我们就添加push( ); 。

使用 indexOf 统计一个字符串中某个字母出现的次数。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值