JavaScript从变量到正则表达式的记忆重点

发布于:2022-07-24 ⋅ 阅读:(245) ⋅ 点赞:(0)

1.变量

1.1两个变量交换值的方法

需要一个中间变量,必须按照下图的顺序来赋值

 2.数据类型

数据类型分为简单数据类型与复杂数据类型

2.0 typeof()方法

typeof(变量)检查变量的数据类型

        var num = 1;
        console.log(typeof(num));

2.1简单数据类型

简单数据类型分为Number、String、boolean、null、undefined五种数据类型

2.1.1Number

(1)NaN

   not a number 意思是不是一个数字,属于Number里面的特殊值。除此以外特殊值还有infinity和-infinity

(2)isNaN() 

用于判断变量是不是一个数字,如果是数字返回false,不是数字返回true

        var y = 1;
        console.log(isNaN(y));
        var y = 'pink';
        console.log(isNaN(y));

(3)转换成Number类型的方法

parseInt()、parseFloat()这两个方法比较常用,parseInt(变量)转换成整数型,parseFloat(变量)转换成浮点型

          var str = '10';
          console.log(parseInt(str));
          console.log(parseFloat(str));

 2.1.2String

(1)字符串的引号嵌套

口诀:外双内单,内单外双

        var str = "我是个'美女'程序媛";
        console.log(str);
        var str = '我是一个"美女"程序媛';  //更加推荐这种
        console.log(str);

(2)字符串的转义字符(需要与正则表达式的元字符区别记忆)

\反斜杠就是转义,\n 换行符、\t 制表符、\b 空格、\' 单引号 、\''双引号

 var str = '我是一个\n"高富帅"程序员';

(3)任何简单数据类型使用+(加号)拼接字符串都会变成字符串

(4)转变成String数据类型的方法

 隐式转换:+(加号)是最常用的

var num = 1;
console.log(''+num);

2.1.3boolean

(1) boolean就两个值,true和false。true相当于数字1,false相当于数字0

(2)转变成boolean数据类型的方法

Boolean(变量)强制转换成布尔类型,null、0、undefined、''、NaN转换成false,其它值皆转换成true

          console.log(Boolean(null));
          console.log(Boolean(0));
          console.log(Boolean(undefined));

2.1.4undefined

(1)声明一个变量不赋值就是undefined

       var z;
       console.log(z);

(2)undefined+数字的值是NaN

2.1.5null

(1)声明一个变量便赋值为null,就是null

var a = null;

(2)使用typeof()检查null的数据类型,结果为object

(3)null与数字相加为数字本身

对于以上部分的总结

(1)isNaN()、typeof()以及转换数据类型使用到的方法,都是不需要变量去调用方法的。除了转化成String类型的toString()是需要变量调用之外,当然toString()方法后面的字符串对象会提到。

 (2)转变数据类型使用到的方法,方法名是一个单词的——首字母大写,方法名是两个单词的——驼峰命名规则。

(3)isNaN()方法和typeof()既不首字母大写也不符合驼峰命名规则

2.2复杂数据类型

复杂数据类型就是对象。对象分为自定义对象、内置对象和浏览器对象

2.2.1自定义对象

(1)创建

字面量的方式创建

        var person = {
            name: '刘德华',
            age: 18
        };

注意:里面的属性名与属性值之间是用:(冒号),属性之间使用逗号分隔

 new Object( )方法创建

       var person = new Object();
       person.age = 18;
       person.name = '张学友';

(2)访问对象中的属性

对象.属性名

console.log(person.age);

对象['属性名']

      console.log(person['age']); //中括号里面一定要有单引号包裹住属性名

(3)删除对象中的属性

delete 访问对象中的属性

       delete person.age; //删除属性的方法一
       delete person['age']; //删除属性的方法二

(4)遍历对象

for(var 变量 in 对象)

        for (var key in person) {
            console.log(key); //key是对象的属性名
            var value = person[key];
            console.log(key + ":" + value);//符号要用双引号或者单引号包裹住
        }

注意:for(var 变量 in 对象)中的变量名一般为k或者key。

          对象的属性值是通过person[变量]获取到的,person[变量]需要与person['属性名'](访问对象中的属性)区分开

 2.2.2函数

(1)创建函数

函数声明   

        function sayHi() {
            console.log('你好世界');
        }
        sayHi();

函数表达式(有等号)

        var sayHell = function () {
            console.log('你好明天');
        }
        sayHell();

(2)函数的形参与实参

  function getSum(a,b){ //这里是形参接收实参值
        console.log(a+b);
       }
       getsum(10,11) //函数被调用传入的值是实参

注意:当实参数大于形参数,后面多于的实参直接忽略

           当实参数小于形参数,没有接收到值的形参值为undefined,函数有算数运算值为NaN

(3)函数的return语句

  • return语句后面的代码不执行
  • return语句只返回一个值
  • return语句需要返回多个值时,多个值可以用数组来包括
        //return使用数组返回多个值
        function getResult(a, b) {
            return [a + b, a - b, a * b, a / b]
        }
        console.log(getResult(20, 10));