JavaScript自制笔记

JavaScript基础

1、输入输出语句

alert(msg)			//浏览器弹出警示框
console.log(msg)	//浏览器控制台打印输出信息,(在F12中给程序员看的)
prompt(info)		//浏览器弹出输入框,用户可输入

2、变量的声明

var age;		//var  + 变量名  来声明变量

3、变量类型

特点:js是动态语言,变量的类型可以变化

①简单数据类型
Number			//数字型
▲范围为Number.MAX_VALUE~Number.MIN_VALUE(最大值~最小值)
特殊的有:Infinity、-Infinity、NaN(无穷大、无穷小、非数值)
Boolean			//布尔型
▲如果布尔参与运算,true为1,false为0
String			//字符串
▲推荐用单引号,引号内要用引号时,需要“外单内双”,或者用转义字符
Undefined		//未定义
Null			//空值,默认为0
②常用函数

判断是否为数字:

isNaN( ** )		//判断是否为数字,返回true或false

检测字符串的长度:

变量名.length    //返回变量的长度

字符串拼接:

用 + 来拼接,同java

检测数据类型:

typeof 变量名;		//返回数据类型的字符串

转换为字符串:

变量名.toString()
String(变量)		//强制转换
用加号拼接

转换为数字型:

变量名.parseInt(string)	//转int,首字符不是数字则会返回NaN变量名.parseFloat(string)	//转floatNumber()		//强制转换用+ - * / 隐式转换			//z

4、字面量

定义:是源代码中队固定值的一个表示法

5、比较运算符

18 == '18'			//返回true,因为会自动隐形转换'18'==='18'			//数值和类型一样才返回true,不然返回false

6、数组

①数组的声明:用new创建

var 数组名 = new Array();

②字面量直接声明

var arr= [];var arr=[1,2,'zyk',true];	//数组中元素类型可以不同

③数组长度函数

在数组名.length			//返回数组的长度值
案例:数组转换分割字符串
 var arr=['red','green','blue','pink'];      var str='';      for(var i=0;i<4;i++){          str+=arr[i];          str+='|';      }          console.log(str)

④新增数组元素

 var arr=['red','green','blue','pink']; //先修改数组的长度 arr.length=5; //或者直接追加 arr[4]='gray';

7、函数

①声明函数

function 函数名(形参列表【无需数据类型】){	//这里形参可以是数组,仍不用写类型,只要实参是数组即可	函数体;}
方法二:var func(变量名) = function(){	函数体;}调用时:func();

②返回值

function 函数名(形参列表【无需数据类型】){			函数体;	return 结果值;		//无需在声明函数时定义返回值类型,可以返回数组等}

▲如果没有返回值,默认返回undefined

③arguments的使用

定义:当我们不确定有多少形式参数传递的时候,可以用arguments来获取在 Javascript中,arguments实际上是对当前函数的一个内置对象,所有函数都内置了一个arguments对象,arguments对象。中储存了传递的所有实参。

function func(){	console.log(arguments);		//一个伪数组储存了所有的实参也具有length等特性}

④作用域链

如果在一个嵌套的作用域中,访问变量会呈链式查找,如

funcetion a(){	var num = 20;	funcetion a(){		var num = 10;		funcetion a(){			console.log(num);				//从里向外查找,答案是10    	}	}}

8、预解析

描述:Js引擎运行分为两步,预解析和代码执行。预解析,预习Js引擎会把js里面所有的var还有function提升到当前作用域的最前面。然后代码执行,按照书写的顺序从上往下执行。预解析分为变量预解析和函数预解析,变量预解析就是把作用域的最前面,不会提升赋值操作。函数就是把函数声明放到作用域的最前面,不会提升调用操作。

9、全局变量

▲当在局部变量出现一个没有被var修饰的变量,默认是声明了一个全局变量,在全局可用

10、对象

①创建对象的方式:

▲属性采用冒号声明,中各个属性间使用逗号连接,不用声明数据类型

var obj={					//字面量直接创建	name:'朱',	sex:'男',	age:18,	sayHi:function(){	console.log('hello');	}}
var obj= new Object();obj.name='朱玉坤';obj.age=18;boj.sayHi = function(){console.log}

②使用对象的方法:

abj.age				//第一种方式调用obj['age']			//第二种方式调用

11、构造函数

语法:

function 构造函数名(){			//构造函数首字母大写	this.属性=值;	this.方法=function(){		函数体;	}}

函数的调用:

new Star('刘德华',18);			//类似于java的狗崽方法

12、遍历对象

for(变量 in 对象for(var k in obj){	console.log(k);			//输出obj中各个属性名	console.log(obk			//输出对象中的各个属性值}

13、内置对象

对象分为:自定义对象、内置对象、浏览器对象

①Math对象
Math.PI					//圆周率Math.floor()			//向下取整Math.ceil()				//向上取整Math.round()			//四舍五入M
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值