JavaScript 基础

存在形式:

  • Head中
<script>
    //javascript代码
</script>

也可以写成:

<script type="text/javascript">
    //javascript代码
</script>
  • 文件
<script src='js文件路径'> </script>
PS: JS代码需要放置在<body>标签内部的最下方

注释

当行注释

//

多行注释

/* 注释内容 */

变量:

    name = 'alex'       // 全局变量
    var name = 'eric'   // 局部变量

写Js代码:

  • html文件中编写
  • 临时的可以在浏览器的终端 console 中编写

基本数据类型

  • 数字
    a = 18;
  • 字符串
    a = "name"
    • 字符串方法
      a.chartAt (索引位置)
      a.substring (起始位置,结束位置)
      a.lenght (获取当前字符串长度)
      ...
  • 列表(数组)
    a = [11,22,33]
  • 字典
    a =
  • 布尔类型
    true false(小写)

for循环

1. 循环时,循环的元素是索引
a = [11,22,33,44]
for(var item in a){
    console.log(item);
}

输出结果:
0
1
2
3

a = {'k1':'v1','k2':'v2'}
for(var item in a){
    console.log(item);
}

输出结果:
k1
k2

2. for 循环
a = [11,22,33,44]
for(var i=0;i<a.length;i=i+1){
}
(不支持字典的循环)
3.while 循环
while{
}

条件语句

  • if else
	if(条件){
	}else if(条件){
	}else{
	}
  • switch case
	switch(name){
		case:'1':
			conslie.log(case1);
			break;
		case:'2':
			conslie.log(case2);
			break;
		default:
			conslie.log(case3);
			break;
	}
==   值相等
	1 == '1'
	1 != 2
	
===  值和类型都相等
	1 === 1
	1 !== '1'
&&   and
||   or

正则表达式

函数:

  • 普通函数
function func(arg){
return arg + 1;
}
setInterval('func()', 5000);
  • 匿名函数
setInterval(function(){
console.log(123);
}, 5000)
  • 自执行函数(无需调用,自动执行)
(function func(arg){
	console.log(arg);
})(1)

相当于:

function func(arg){
	console.log(arg);
}
func(1)

序列化:

将对象转换为字符串:

JSON.stringify()

将字符串转换为对象类型:

JSON.parse()

转义:

URL 只能使用 ASCII 字符集,当使用了 ASCII 字符集之外的字符就需要转义
客户端(cookie) => 服务器端
将数据经过转义后,保存在 cookie

encodeURL()
encodeURLComponent()
decodeURL()
decodeURLComponent()
escape()
unescape()

eval:

可以执行表达式和代码

时间:

Date 类
var d = Date()
d.getXXX 获取
d.setXXX 设置

作用域:

1.以函数作为作用域(不考虑 let)
2.函数的作用域在函数未被调用之前就已经创建
3.函数的作用域存在作用域链,并且也在被调用之前创建(和在哪调用没有关系)
4.函数内局部变量提前声明(不赋值,为undefined)
示例一:

	name = 'bob';
	function func(){
		var name = 'jack';
		function inner(){
		var name = 'tom';
		console.log(name);
		}
		inner();
	}
	func();

执行结果:tom

示例二:

	name = 'bob';
	function func(){
		var name = 'jack';
		function inner(){
			console.log(name);
		}
		return inner;
	}
	var ret = func();
	ret();

执行结果:jack

示例三:

	name = 'bob';
	function func(){
		var name = 'jack';
		function inner(){
			console.log(name);
		}
		var name = 'tom';
		return inner;
	}
	var ret = func()
	ret();

执行结果:tom

示例四:

	function func(){
		console.log(name);
	}
	func();

程序报错

	function func(){
		console.log(name);
		var name = 'bob';
	}
	func();

执行结果: undefined

JavaScript 面向对象

  • this 代指对象
  • 创建对象时:new()
function Foo(name){
	this.name = name;
	this.SayName = function(){
		console.log(this.name);
	}   // 这个方法会存在每一个实例化的对象当中
}
var obj = new Foo('bob');
obj.SayName()

原型

方法存在原型中就不会储存在每一个对象当中

function Foo(name){
	this.name = name;
}
// Foo 的原型
Foo.prototype = {
	'SayName': function(){
		console.log(this.name)
}
}

posted on 2019-04-26 15:31  doubtful  阅读(185)  评论(0编辑  收藏  举报

导航