JavaScript基本概述
来源:互联网 发布:上知教育一个月多少钱 编辑:程序博客网 时间:2024/06/12 20:20
JavaScript基本概述
JavaScript(以下简称JS)是一种弱语言,区分大小写,用于响应web行为的编程语言。
JavaScript的使用方法有3种,和css样式使用的方式相同
- 直接在HTML标签中写明
- 使用
<script>
标签 - 引用外部JS文件
JS的数据类型:
JS的算术运算:
变量的作用域:
全局变量变量拥有全局作用域,而局部变量只能在声明的区域内有作用。
var scope="global"; //声明一个全局变量function checkscope(){ var scope="local"; //声明一个局部变量 return scope; //返回局部变量的值,而不是全局变量的值}checkscope(); //=>local
函数作用域和声明提前:
JS的函数作用域是指在函数内声明的所有变量在函数体内始终课件的。这意味着变量在声明之前甚至可以使用。这种特性被称为声明提前(hoisting)。
var scope="global";function f(){ console.log(scope); //输出"undefined",而不是"global" var scope="local"; //变量在这里赋初始值,但是变量本身在函数体内的任何地方均有定义的 console.log(scope); //输出"local"}
上面的函数可以等价于下面的函数,这样更容易理解。
var scope="global";function f(){ var scope; //在函数顶部声明了局部变量 console.log(scope); //变量存在,值是"undefined" scope="local"; //变量初始化赋值 console.log(scope); //有了所期望的值
自增或自减的运算顺序:
自增放在前面是先自加后再使用number,
自增放在后面是先使用number后再自加。
function test(){ var number=0; console.log(number++); //结果为0 console.log(number); //结果为1 console.log(++number); //结果为2 console.log(number); //结果为2 } test();
条件语句:
if语句:
if(判断条件){ //符合条件,执行内容}else if(判断条件){ // 符合另一条件,执行内容}else{ // 不符合上述条件,执行内容}
其中注意的是如果在某个执行内容中加入return(后面不带返回值),将直接结束if语句。
var number=5; function test(number){ if(number==5){ number++; console.log(number); //输出5 return; //直接结束if语句 number+=number; //由于return了,所以后面的语句是不会执行的 console.log(number); } } test(number);
switch语句:
switch(expression要进行比较的值) { case n比较值: //代码块 break; case m比较值: // 代码块 break; default: //默认代码块}
循环语句:
常见的循环语句有两种,for和while。
for (语句 1; 语句 2; 语句 3){ //被执行的代码块}//语句 1 (代码块)开始前执行 starts.//语句 2 定义运行循环(代码块)的条件//语句 3 在循环(代码块)已被执行之后执行
while (条件){ //需要执行的代码}
在循环中值得注意的是有两个关键字,break和continue。
for (var i = 0; i < 10; i++) { if (i == 3) { break; //在i等于3的时候,实现if语句,执行break,整个循环结束 } console.log(i); //最后输出只有0 1 2 }
for (var i = 0; i < 10; i++) { if (i == 3) { continue; //在i等于3的时候,实现if语句,执行continue,本次循环结束,进入下次循环 } console.log(i); //最后输出有0 1 2 4 5 6 7 8 9,除了3 }
对象object:
创建对象的方法:
var empty={}; //没有任何属性的对象var point={x:0,y:0}; //两个属性var book={ "main title":"JS", //属性名字中有空格,必须用字符串表示 "sub-title":"The js", //属性名字中有连字符,必须用字符串表示 "for":"all js", //"for"是保留字,必须用引号 author:"js" text:function (){code lines} //方法 };var obj=new Object(); //使用new关键字
使用点语法来引用对象中的属性和方法,
数字的点语法需要点2个
比如4..rofix(2);
还一种方法是结合[]来访问属性
比如4["number"]
构造函数和this关键字:
上述通过new关键字来创建对象,而对象我们可以自己创建,这里就有构造函数这个东西来创建对象。
function User(name,pwd){ this.name=name; this.pwd=pwd; this.show=function(){ console.log(name+":"+pwd); } } var user=new User("zhangsan","333"); console.dir(user);
创建构造函数的时候要注意的是,构造函数的首字母要大写(一般默认),用于区分构造函数和普通函数。
创建好后,则通过new关键字就可以创建对象了。
其中this关键字起到对象指引的作用,在函数中,this就是指代函数本身的对象。
this关键字
-this是一个特殊变量
-默认情况下this指向全局对象(window)
-在对象中this指向对象本身
-JavaScript有三种方法可以改变this的指向:call,apply,bind
在上述创建的构造函数在每次创建新对象时,其中的函数一起被创建了,但是看函数的不需要一起被复制,于是引入prototype(原型)。 User.prototype.show=function(){console.log(name+":"+pwd);}
每一个对象都有一个prototype(原型)属性,可以使这个函数共用。
使用call, apply,bind方法可以改变函数执行的对象。
function f(x, y) { console.log(this.a); console.log(x + y) ; } var g = { a: "hello" }; f.call(g, 1, 2); //输出hello 3 f.apply(g, [1, 2]); //输出hello 3,后面的参数需要以数组的方式来传入 var h=f.bind(g); //输出undefined,先指定对象,在后面新的函数中在调用这个对象 h(1, 2); //输出hello 3 h函数由于在上面bind指明了对象,所以h函数的对象就是 //bind指明的对象g
本博客仅用于记录web前端学习情况
- JavaScript基本概述
- JavaScript基本概述(一)
- JavaScript基本组成部分和调用概述
- 01-javascript概述和基本语法
- JavaScript概述
- JavaScript概述
- JavaScript概述
- JavaScript概述
- javascript概述
- JavaScript概述
- JavaScript概述
- JavaScript 概述
- JavaScript 概述
- Javascript概述
- JavaScript 概述
- javascript概述
- JavaScript概述
- JavaScript概述
- 更改文本框的值(加法运算)
- 欢迎使用CSDN-markdown编辑器
- Day14-HTTP协议 & web开发概述 & servlet快速入门
- Android——Service服务介绍
- 用原生JS实现一个简单计算的功能实例
- JavaScript基本概述
- 断舍离学习
- 多维数组------八皇后问题
- MYSQL日期和时间函数
- EffectiveC++学习笔记-条款18|19
- ES6 的变量对象解构
- The source file name(s) are larger than is supported by the file system
- android单例模式的用途
- 利用python爬取实习僧网站上的数据