JavaScript学习总结

一、Javascript简介

作为开发Web页面的脚本语言而出名,在前端和后端都有广泛应用。而且它可以之间在浏览器的控制台进行编写然后运行,也可以独立作为一个js文件,然后在html文件当中引用,也可以由Node.js进行解释然后运行。

二、基本语法

  • 大小写敏感
    Javascript对大小写敏感,我们在定义变量时,通过大小写来定义不同的变量,使自己不容易忘记变量的含义

  • 标识符
    在Javascript当中,第一个字符只能为字母、下划线、美元符号(一般和钱相关的才用)

  • 注释
    单行注释://
    多行注释:/* 开始, */结尾

  • 语句
    在一个语句后面,我们可以像C一样添加来进行隔开,但是也不是必要的

  • 保留字
    与大多数编程语言一样也有保留字,一般有break;do;if;with;case等等,在定义变量或函数名时可以先查阅一下

  • 变量
    在Javascript当中的变量是松散的,就是可以存放任何类型,定义变量时使用var,后面加上变量名
    如果在函数中使用 var 定义一个变量,那么这个变量在函数退出后就会被销毁(局部的)
    如果在定义变量时没有赋值,那么其值就是undefined

三、操作符

  • 一元操作符
    ++:自增
    --:自减
  • 布尔运算符
    &&:逻辑与
    ||:逻辑或
    !:逻辑非
  • 算术操作符
    +、-、*、/、%(不做过多解释)
  • 关系操作符
    <> <=>= == != !== ===
  • 条件操作符
  • 赋值操作符
    = += -+ *= /= %=

四、语句

没啥特别的,与其他编程语言类似,例如if;while;for;break;switch;continue等等

五、函数function

任何一个语言的函数都是非常重要的,例如C(由函数构成),Javascript也不例外。这里就不再介绍函数的作用以及使用方式了。
函数语法:

function name(参数 1, 参数 2, 参数 3) {
    要执行的代码
}

六、对象Object

与C++相似,我们常将数据和方法封装在对象当中。
创建对象的方式:

//方式一new
var person = new Object();//生成空对象
person.name = 'Elon Musk';//设置对象的属性
person.age = 46;
person.job = 'SpaceX Rocket';
person.sayName = function(){    //设置对象的方法/函数,注意此处
    console.log(this.name);
};
//方式二字面量
var person = {
    name: 'Lary Page',
    age: 47,
    job: 'Software Engineer',
    sayName: function(){        //注意此处
        console.log(this.name);
    }
};
console.log(person.job);
person.sayName();

七、数组Array

同样的,Javascript当中也有数组,不过与其他语言当中的数组是天差地别,在Javascript当中的数组的每一项都可以用来保存任何类型的数据(当然是不推荐这样做的),而不像C一样要求严格的数据类型相同,并且其数组的大小是可以动态的调整的,随着数据添加而增大数组容量。
创建数组方法:

//方式一new
var colors = new Array('red', 'blue', 'green');
//方式二字面量
var colors = ['red', 'blue', 'green']; // 创建一个包含 3 个字符串的数组
console.log(colors[1]);
colors[3] = 'brown';
console.log(colors.length);
var names = []; // 创建一个空数组
var hyBird = [1, 2, 'haha', {firstName: 'Yong', lastName: 'Wang'}]; //不推荐!
console.log(hyBird[3].firstName);

常用的数组方法:

  • 元素联合

  • 堆栈方法
    pushpop两种方式
    pop:移除数组末尾的最后一项
    push:依次放入数组末尾

  • 队列方法
    shiftunshift两种方式
    shift:移除第一项,并返回
    unshift:在第一项前再加一项

  • 反转数组项

  • 链接方法

  • 分片方法
    slicesplice两种方式
    slice:不影响原始数组,在数组当中的一个或多个项中创建一个新数组
    splice:直接更改原始数组,进行删除、插入、替换等操作

八、链式句法

在Javascript当中,想要实现链式句法很简单,只需要让每个函数返回this 代表包含该函数的对象,这样其他函数就可以立即被调用了

//链式语法
var bird = {//定义对象字面量
  catapult: function() {
    console.log( 'Yippeeeeee!' );
    return this;//返回bird对象自身
  },
  destroy: function() {
    console.log( "That'll teach you... you dirty pig!" );
    return this;
  }
};
bird.catapult().destroy();//destroy()后还可以再链接吗?

九、闭包

闭包就是:函数的局部变量集合,只是这些局部变量在函数返回后会继续存在。当在一个函数内定义另外一个函数就会产生闭包(Closure),
举例:

function greeting(name) {
    var text = 'Hello ' + name; // local variable
    // 每次调用时,产生闭包,并返回内部函数对象给调用者
    return function() { console.log(text); }//注意该函数无名称,称为匿名函数
}
var sayHello = greeting('Closure');//调用greeting()返回了什么?
sayHello();  // 注意此处的使用方法。通过闭包访问到了局部变量text

在函数greeting执行后,又返回了函数匿名函数,但是该匿名函数可以访问到greeting函数当中的text变量,所以该代码的运行结果就应该为:Hello Closure

总结

通过JavaScript的学习,我了解到了其强大之处。Javascript的语法相对来说没有那么严格,可以说是相当松散了,但是其也存在一定弊端,对新手及其不友好,在编写代码时,时不会有错误提示你的,但是在程序运行后,才会有错,初入的人可能会感到一头雾水。

参考资料

棋格教学网站:https://qige.io/web/web.html#js

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值