欢迎来到 Kong Xiangqun 的博客

04、js-基础

 1 """
 2 ECMAjavascript
 3 
 4 ECMAjavascript5 -- es5
 5 
 6 ECMAjavascript6 -- es6
 7 
 8 ECMAjavascript 三部分
 9 
10 """

一、javascript引入方式

"""
方式1:script标签中写js代码
    <script>
        js代码
    </script>
方式2:创建.js结尾的文件,写js代码,通过script标签的src属性来引入
    <script src="xx.js"></script>

建议放到body标签下面
"""

二、变量

// 声明变量时 可以不用var. 如果不用var 那么它是全局变量.
// 变量命名,首字符只能是字母,下划线,$符,区分大小写
var a = 10; 声明变量
var b;   只声明没有赋值,默认值为undefined

三、数据类型

1、数值类型

// number类型
var a = 11;
var b = 11.11;
typeof a; number
typeof b; number
// + - * / % 都行,没有取整

2、字符串

var s = '欣慰';
typeof s;  //"string"

//索引取值:s[0]; s.charAt(1);
/切片: s.substring(起始值,结束值); 都是索引值
/移除两端空格:
var a = '  hello  ';
a.trim(); 
a.trimLeft();
a.trimRight();

3、布尔类型

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

</head>
<body>

<script>

    console.log(true);
    console.log(false);
    var y=1;
    if(1){
        y = y+1;
        alert(y)
    }
    else {
        y = y-1;
        alert(y)
    }
</script>

</body>
</html>

4、undefined和null类型

"""
Undefined: 
    类型只有一个值,即 undefined。当声明的变量未初始化时,
    该变量的默认值是 undefined。

    当函数无明确返回值时,返回的也是值 "undefined";
null: 
    变量不用了,就可以给变量赋值为null,--- object类型
"""

四、数组

var names = [11,22,33];
//数组常用方法:

names[0]                                         //索引,索引也是从0开始的
//尾部追加移除
names.push(ele)                               // 尾部追加元素
    //示例:a.push('xx'); --  [11, 22, 33, "xx
var ele = names.obj.pop()                // 尾部移除一个元素
    //示例:a.pop(); -- [11, 22, 33]

//头部插入移除
names.unshift(ele)                      // 头部插入元素
    //示例:a.unshift('ssss'); --  ["ssss", 11, 22, 33]
var ele = obj.shift()                             // 头部移除一个元素
    //示例:a.shift(); --  [11, 22, 33]

names.splice(index,0,ele)                 // 在指定索引位置插入元素
//names.splice(从哪删(索引),删几个(个数),删除位置替换的新元素(可不写,可写多个)) 
names.splice(index,1,ele)                  // 指定索引位置替换元素
names.splice(index,1)                      // 指定位置删除元素
    //示例: a.splice(1,2) --  [11, 22, 33]
        a.splice(1,1,'xx','oo','asdf'); -- [11, "xx", "oo", "asdf", 33]
//切片
names.slice(start,end)                      // 切片
    //示例:a.slice(1,3);--  [22, 33]


names.reverse()                            // 原数组反转
    //示例:a.reverse(); -- [44, 33, 22, 11]

names.join(sep)                             // 将数组元素连接起来以构建一个字符串
    //示例: var a = ['ni','hao','ma',18]
        //a.join('+'); -- "ni+hao+ma+18"


names.concat(val,..)              // 连接数组
    //示例: var a = [11,22]; var b = ['aa','bb']
    //var c = a.concat(b); c -- [11, 22, "aa", "bb"]
names.sort()                             // 对原数组进行排序
    //很尬!
    //需要自己定义规则:
        function compare(a,b){
           return a - b;  当大于0时,两个数据换位置
        };
        //使用: a.sort(compare); 升序排列

五、自定义对象类型

// 声明
info = {
    name:'武沛齐',
    "age":18
}

var a = {username:'xx',password:'123'}; //可以不加引号
typeof info;
"object"

// 常用方法
var val = info['name']        // 获取,通过键取值必须加引号,
info.name 也是可以的
info['age'] = 20            // 修改
info['gender'] = 'male'        // 新增
delete info['age']            // 删除

创建对象:

var a = new String('ss')
typeof a; 'object'

六、流程控制

 var a = 0;
    if(a > 1){
        console.log('1111');
        // var hhhh = document.getElementById('d1');
        // hhhh.innerText = '彭于晏';
    }else if(a<1){

        console.log('2222');
    }else {
        console.log('3333');
    }

七、运算符

1、比较运算符

// > < == !=  >=  <=   ===  !==

var a = 2;
var b = '2';
a == b;  true  弱等于
a === b;  false  强等于
a != b;  false
a !== b;   true

2、算数运算符

// +  -  * / %   ++  --  
// ++ 自增 1  
// -- 自减 1

var a = 2;
// a++  先执行逻辑  在+1
// ++a  先+1 在执行逻辑

// 简单示例:
if (++a === 4){
    console.log('xxx');
}
else{
    console.log('ooo');
};

八、循环

1、for循环

// 循环数组
// 方式1:
for (var i in a){
    console.log(i,a[i]);
}
// 方式2
for (var i=0;i<a.length;i++){
    console.log(i,a[i]);
}


for (var i=0;i<10;i++){
    console.log(i);
}

// 循环自定义对象
var d = {name:'chao', age:18};
for (var i in d){
    console.log(i,d[i]);
}
//不能用下面的属性取值的方法
for (var i in d){
    console.log(i,d.i);
}

2、while循环

var a = 0;
undefined
while (a < 10){
    console.log(a);
    a++;
}

九、函数

1、普通函数

function f1(a,b){
    return a+b;
}
// 执行: f1(1,2) -- 3
function f1(a,b){
    return a,b;
};

// f1(1,2);
// 不能返回多个值:  2

2、匿名函数

var a = function (a,b){
    console.log('xxx');
}

var d = {'xx':'oo','f':function (a,b){
    console.log('xxx');
}};
// 执行:d.f(1,2);

3、自执行函数

(function () {
        alert('自执行函数!')
})()

 十、json序列化

import json
// JSON
var d_json = JSON.stringify(d);  // 序列化
var xx = JSON.parse(d_json);     // 反序列化

 

posted @ 2020-09-06 17:16  kongxiangqun20220317  阅读(150)  评论(0编辑  收藏  举报