分享

js基础

 互酌明月 2016-10-26

1、js

  js是一种编程语言,主要是让页面动起来,js与java没有半毛钱的关系;

  因为js与python比较相似,所以基础的好多都是一样的;


2、js文件的存储位置
  :js文件在HTML中写的时候,放到<body>...</body>的最后;

  格式如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="content-type" content="text/html;charset=utf-8">
        <title>页面一</title>
        <style>
         
        </style>
    </head>
     
    <body>
     
     
        <script src = 'js/Jquery.js'></script>   <!-- 这里是引入Jquery库  -->
        <script type = 'text/javascript'>   
            <!-- 这里面是写js代码;也可以在其他地方写js代码,引入进来
        </script>
    </body>
</html>


3、js变量

(1)、js中单引号和双引号没有任何区别;js中代码可以放到一行,所以末尾加上;为好;

(2)、alert():是以输出框的形式打印;比较繁琐,一般不用;

  console.log():是以控制台的形式打印;调试什么都比较方便,一般用的是这种打印方式;

(3)、var的区别

1
2
name = 'abc'      //全局变量
var name = 'abc'  //局部变量

在看其本质:

name = 'abc'  <==> window.name = 'abc';这就是全局变量,window是一个全局对象;

以后再写全局变量时,加上window.就可以很清楚的区分全局变量和局部变量;


4、js函数

js函数的调用位置可以在函数定义之上/之下。

(1)、构造函数

1
2
3
4
5
6
7
8
9
Fun('alex');
function Fun(){
    name = arguments[0];  //尽量不要用构造参数
    var arg2 = arguments[1];  //构造默认参数
    console.log(name);
    console.log(arg2);
    return;
}

js函数的接收默认参数,若没有接收到的是:undefine;

(2)、匿名函数

1
2
3
4
var temp = function(){
    //匿名函数
     
}

(3)、自执行函数

1
2
3
4
(function(name){
    //自执行函数,不用进行函数调用,就可以直接执行
    console.log(name);    
})('abc')  //这里是参数传递


5、js字符串

常用字符串的方法:

(1)、obj.trim();

1
2
var str = '   abc    ';
str.trim();  //trim()方法就是去掉字符串的前后空格

(2)、obj.charAt(index);

1
2
3
var str = 'abc';
str.charAt(0);  //结果'a';charAt()方法根据下标获取字符
str.charAt(100);  //超出索引,为''

(3)、obj.substring(start, end); 

1
2
var str = 'abcd';
str.substring(1, 3);  //结果:'bc'  包含左边,不包含右边;获取子串

(4)、obj.indexOf(char);

1
2
var str = 'abcd';
str.indexOf('a'); //结果:0,没找到返回-1;

(5)、obj.length

1
2
var str = 'abc'
str.length   //结果:3;得到字符串的长度;


6、js数组

(1)、在js中数组的声明有2种方式:

1
2
var array = [1, 2, 3, 4,];     //直接声明数组
var array = Array(1, 2, 3, 4, 5);  //利用数组对象声明数组

(2)、数组添加方法

1
2
3
4
5
6
var array = Array(1, 2, 3, 4, 5);
array.push('alex');   //添加元素到数组的最后
array.unshift('old');  //添加元素到0位置
array.splice(1, 0, 'boy'); //添加元素到1位置
array.splice(100, 0, 8); //0代表:只插入,不删除,超过范围,自动补到最后一个位置即可;
//splice()的第2个参数不为0的时候;index;删除个数;替换的内容

(3)、特别注意

1
2
3
4
5
array[100] = 10; 这个才是下标为100处的赋值;
console.log(array);   //打印的是整个数组元素
array.splice(100, 0, 'haodehen'//不会添加到100下标处,只是追加到最后
console.log(array);
console.log(array[100])  //打印下标为100处的值,前面都是没有定义的(空着呢)

(4)、数组删除方法

obj.pop();   //删除数组中的最后一个元素

obj.shift();   //删除数组中的第一个元素

obj.splice(index, count);  //从下标为index开始,一共删除几个元素

(5)、其他方法

obj.slice(start, end);    //截取

obj1.concat(obj2);      //合并

obj.reverse();     //翻转

obj.join('_');     //字符串化

obj.length     //数组长度


7、js中的循环

一般常用的是2种for循环

1
2
3
4
5
6
7
8
9
10
11
12
13
var array = [11, 22, 33, 44, 55];
var dict = {'name':'alex''age':19}   //字典 由(key--value)
for(var item in array){  //在js中这个变量item取得是下标(索引/键)
    console.log(item);
}
for(var item in dict){        //对于这种循环的遍历,看起来简洁,当为字典遍历时只能用这个循环来遍历,每次取得键,就可得相应的值。
    console.log(dict[item]);  //通过这个才打印出value
}
for(var i = 0; i < 10; i++){  //这个for()循环很熟悉了,针对的是数组的遍历
    console.log(dict[i]);
}




本文出自 “11586096” 博客,请务必保留此出处http://11596096.blog.51cto.com/11586096/1865140

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多