javascript

1.js引入方式

1.1引入方式一:内接式

1.2引入方式二:外接式

2.注释

//单行注释

3.调试语句

alert('');弹出警告框
console.log('');控制台输出
document.write('');页面上输出

javascript
javascript

目前成都创新互联公司已为千余家的企业提供了网站建设、域名、雅安服务器托管网站托管、企业网站设计、湘西土家族网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

4.变量

4.1定义变量

//方式一:先定义  后赋值
var a=3;
a=100;

//方式二:定义+赋值
var a=100;

//变量需要先定义,后使用,不设置变量,直接输出,会报错

javascript

4.2变量的命名规范

只能由英文字母、数字、下划线、美元符号$构成
不能以数字开头
不能是js的关键字

4.3数值类型-number

如果一个变量中,存放了数字,那么这个变量就是数值类型
只要是数字,无论是整数,还是小数,无论正数,负数
typeof number;//查看数据类型

javascript

4.4字符串类型-string

javascript

4.5布尔类型-boolean

javascript

4.6空对象-object

javascript

4.7未定义-undefined

javascript

4.8复杂数据类型

Fuction
Object
Array
String
Date
后面详解

4.9数据类型转换

4.9.1number转换为string类型

//隐式转换

javascript

//强制转换

javascript

//四舍五入

javascript

4.9.2string转换为number类型

javascript

4.9.3任何数据类型都可以转为boolean类型

var b1 = '123'; //true
var b2 = 0; //false
var b3 = -123 //true
var b4 = Infinity; //true
var b5 = NaN; //false
var b6; //false
var b7 = null; //false
//使用Boolean(变量) 来查看当前变量的真假

5.运算符

5.1赋值运算符

javascript

5.2算数运算符

javascript

5.3比较运算符

javascript

6.流程控制

6.1if

var age = 20;
if(age>18){
    //{}相当于作用域
    console.log('可以去学车');
}
alert('vita'); //下面的代码照样执行

6.2if-else

var age = 20;
if(age>18){
    //{}相当于作用域
    console.log('可以去学成');
}else{
    console.log('年龄还不到');
}
alert('vita'); //下面的代码照样执行

6.3if-else if -else

var age = 18;
if(age==18){
    //{}相当于作用域
    console.log('可以去学成');
}else if(age==30){
    console.log('该买车了');
}else{
    console.log('随便你了')
}
alert('vita'); //下面的代码照样执行

6.4逻辑与&&、逻辑或||

//1.模拟  如果总分 >400 并且数学成绩 >89分 被**大学录入
//逻辑与&& 两个条件都成立的时候 才成立
if(sum>400 && math>90){
    console.log('**大学录入成功');
}else{
    alert('去别的学校吧');
}
//2.模拟 如果总分>500 或者你英语大于85 被**大学录入
//逻辑或  只有有一个条件成立的时候 才成立
if(sum>500 || english>85){
    alert('被**大学录入');
}else{
    alert('去别的学校吧');
}

6.5switch语句

javascript

6.6while循环

javascript

6.7do-while循环

用途不大:就是先做一次 ,上来再循环

javascript

6.8for循环

    

javascript

7.函数

function:是关键字。
函数名字:命名规定和变量的命名规定一样。
    只能是字母、数字、下划线、美元$符号,不能以数字开头。
参数():后面有一对小括号,里面放参数。
大括号{}里面是函数语句

javascript

7.1函数全局污染

两个js文件中的函数名相同,会调用后引入的js中的函数

javascript
javascript
javascript
javascript

7.2全局污染处理

javascript
javascript
javascript

8.对象

8.1创建对象的方式

1.使用Object或对象字面量创建对象
2.工厂模式创建对象
3.构造函数模式创建对象
4.原型模式创建对象

8.2使用Object或对象字面量创建对象

object方式创建对象


字面量方式创建对象


一个student对象创建完成,拥有两个属性:name及age。
但这种方式有个缺点,就是创建多个student,就需要书写多次相同模式的代码。

javascript

8.2.1对象取值小方法



    
    



p标签内容--原有内容

javascript

8.2.2删除对象中的属性



    
    



p标签内容--原有内容

javascript

8.3工厂模式创建对象


javascript

对于上面创建的对象student1和fruit,用×××tanceof监测,都是Object类型
如果我们希望student1是student类型,fruit是fruit类型,那么可以使用自定义构造函数的方法来创建对象。

8.4构造函数模式创建对象

8.4.1构造函数和普通函数

var obj = new Object();
var arr = new Array(10);  //构造一个初始长度为10的数组对象
这两种都是使用构造函数方式创建对象

构造函数与普通函数区别:
1.实际上并不存在创建构造函数的特殊语法。
对于任意函数,使用new操作符调用,就是构造函数;不使用new操作符调用,就是普通函数。
2.按照惯例,约定构造函数名以答谢字母开头,普通函数以小写字母开头。例如new Array(),new Object()。
3.使用new操作符调用构造函数时,会经历(1)创建一个新对象;(2)将构造函数作用域赋给新对象(使this指向该新对象);(3)执行构造函数代码;(4)返回新对象;4个阶段。

8.4.2构造函数创建对象

    
我们看到两个对象中有相同的方法,可以把相同的方法移到构造函数外部
我们通过将共用的函数定义为全局函数,这样对象中的alertName属性则被设置为指向该全局函数的指针。由此解决了内存浪费的问题。
还可以通过原型对象模式来解决

8.4.3原型模式创建对象

    

9.复杂数据类型

9.1数组Array

9.1.1数组的创建

方式一:字面量方式创建

javascript

方式二:构造函数方式

javascript

7.1.2数组的常用方法

7.1.2.1toString()把数组转换为字符串

javascript

7.1.2.2重写toString()和toLocalString()

javascript

7.1.2.3栈方法--后进先出push(),pop()

javascript

7.1.2.4队列方法-先进先出unshif(),shift()

javascript

7.1.2.5数组排序sort(),reverse()
"sort是先按照第一个字符进行排序,然后按照第二个字符排序"

javascript

"重写sort排序规则"

javascript

7.1.2.6concat()把几个数组合并为一个数组

javascript

7.1.2.7slice()数组切片

javascript

7.1.2.8splice()可插入,删除,替换数组内容

javascript

7.1.2.9indexOf(),lastindexOf()查看数组中元素的索引

javascript

7.1.2.10filter()将数据中的元素进行过滤

javascript

7.1.2.11map()对数组中的每个元素进行操作

javascript

7.1.2.12forEach()

javascript

7.1.2.13join()
将数组中元素使用指定的字符串连接起来,会形成一个新的字符串

javascript

7.1.2.14isArray(被检测的值)
布尔类型值 = Array.isArray(被检测的值) ;
判断被检测的值是否是数组,返回布尔值。

javascript

7.1.3伪数组arguments




    
    
    



javascript

之所以说arguments是伪数组,是因为arguments可以修改元素,但是不能改变数组的长度。



    
    
    



javascript

7.2字符串

javascript
javascript

    

javascript

7.3Date日期对象

7.3.1日期对象的方法




    
    
    




javascript

7.3.2日期对象小应用




    
    
    



javascript

7.4编码和解码方法




    
    
    



javascript

7.5window对象

所有变量和方法都属于window对象。



    
    
    



javascript

7.6math对象

7.6.1math方法试验




    
    
    




javascript

7.6.2获取min-max之间的整数




    
    
    



javascript

7.6.3获取随机颜色




    
    
    



javascript

7.6.4获取随机验证码




    
    
    



javascript


本文标题:javascript
当前链接:http://myzitong.com/article/gojdgi.html