JavaScript 入门指南(二)JavaScript 的数据类型和 JSON 数据

04-09 阅读 0评论

JavaScript 的数据类型

基本数据类型

  • undefined 类型:只有一个值 undefined(未定义),它是一个保留字。表示变量虽然已经声明,但却没有赋值

    JavaScript 入门指南(二)JavaScript 的数据类型和 JSON 数据,JavaScript 入门指南(二)JavaScript 的数据类型和 JSON 数据,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,访问,方法,第1张
    (图片来源网络,侵删)
  • number 类型:所有的整数和小数

    注:NaN 是一个特殊的数字值(typeof NaN的结果为number),是not a number的缩写,表示不是一个合法的数字。不是数字的字符串通过函数进行数据类型转换为数字,结果就是 NaN

  • string 类型:所有被单引号和双引号包裹的字符串

  • boolean 类型:布尔值,只有两个值 true 和 false

  • object 类型:所有对象的数据类型

    注:

    JavaScript 入门指南(二)JavaScript 的数据类型和 JSON 数据,JavaScript 入门指南(二)JavaScript 的数据类型和 JSON 数据,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,访问,方法,第2张
    (图片来源网络,侵删)
    • 可以使用关键字 typeof 可以查看变量的数据类型

    • null 类型:只有一个值 null(空),它是一个保留字。表示没有值,用于定义空的或不存在的引用。

      注意:

      • 空值不等同于空字符串 “” 或 0
      • undefined 类型就是使用 null 演化而来,所以 undefined == null 为 true
      • undefined 的数据类型是 undefined,null 的数据类型是 object,所以 undefined === null 为 false

        引用数据类型(对象)

        • js 语言是基于对象的编程语言。在 js 中没有类,里边使用的对象都是使用函数模拟出来的,包含了一些内置对象
        • 传址:在赋值过程中,引用数据类型的变量实际上存储的是数据的地址(对数据的引用),而不是原始数据或者数据的拷贝。
        • 注意:所有的对象都是 object 对象,包括 NaN、null

          JavaScript 创建对象的 3 种方式:

          • 方式1:通过对象字面量构造,其 prototype(原型、蓝本)指向 Object.prototype

            var 对象变量名={
            	属性名:属性值,
            	方法名:function([参数列表]){
            		方法体
            	}
            }
            var person = {
                name: "Tom",
                age: 18
            }
            console.log(person)		//{name: 'Tom', age: 18}
            
          • 方式2:通过构造函数构造,其 prototype(原型、蓝本)指向其构造函数的 prototype 属性指向的对象

            JavaScript 入门指南(二)JavaScript 的数据类型和 JSON 数据,JavaScript 入门指南(二)JavaScript 的数据类型和 JSON 数据,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,访问,方法,第3张
            (图片来源网络,侵删)
            var 对象变量名 = new Object();
            对象变量名.属性名 = 属性值;
            对象变量名.方法名 = function([参数列表]){
            	方法体
            }
            var person = new Object();
            person.name = "张三";
            person.age = 18;
            console.log(person)		//{name: 'Tom', age: 18}
            

            自定义构造函数构造

            // 方式1:
            function 构造函数([参数列表]){
            	this.属性名=属性值(或参数列表中参数);
            	this.方法名=function([参数列表]){
            		方法体
            	};
            }
            var 对象名 = new 构造函数([参数列表]);
            // 方式2:原型法
            function 对象创建器(){};
            对象创建器.prototype.属性=属性值;
            对象创建器.prototype.方法=function([参数列表]){
            	方法体
            };
            var 对象名 = new 对象创建器([参数列表]);
            // 方式1与方式2混合
            function 构造函数([参数列表]){
            	this.属性1=属性值;
            	...;
            	this.属性N=属性值;
            	};
            }
            对象创建器.prototype.方法=function([参数列表]){
            	方法体
            };
            var 对象名 = new 构造函数([参数列表]);
            
          • 方式3:通过 Object.create 构造,其 prototype(原型、蓝本)指向 Object.create 的参数

            var person = {
                name: "Tom",
                age: 18
            }
            var person = Object.create(person)
            console.log(person)				//{}
            console.log(person.__proto__)	//{name: 'Tom', age: 18}
            

            总结:第 1 种创建方式其实就是第 2 种的语法糖,过程一致。第 3 种方式通过 Object.create 来创建的对象并不会继承其父对象的属性和方法,只能通过原型链来访问

            常用内置对象

            String:字符串

            String 对象用于处理文本(字符串)

            String 对象中定义了一些处理字符串的函数

            • 创建 String 对象的方式(4 种方式):

              var str = new String("字符串");
              var str = "字符串";
              var str = '字符串';
              var str = `字符串`;
              

              注:

              • 使用反向单引号创建字符串,可以使用 ${} 引用其他字符串对象

                var str1 = 'a-b-c';
                var str2 = `hello${str1}`;	// helloa-b-c
                
              • String 对象常用属性:

                • length :字符串的长度

                  'aaa'.length	// 3
                  
                • String 对象常用函数:

                  • charAt() :返回在指定索引的字符

                    // 使用length属性和charAt方法遍历字符串
                    for(let i=0; i
                        alert(str2.charAt(i));
                    }
                    
                        // 升序
                        return a-b;
                    }));	// 排序后:1,2,3,4,5
                    console.log("排序后: " + arr3.sort(function (a, b) {
                        // 降序
                        return b-a;
                    }));	//排序后:5,4,3,2,1
                    "key1":value,"key2":value,"key3":value...},{"key1":value,"key2":value,"key3":value...}]
                    {"key1":value,"key2":[value,value,value...],"key3":value...}
                    {"key1":value,"key2":[{"key1":value,"key2":value,"key3":value...},value,value...],"key3":value...}
                    "name":"柳岩","age":18};
                    //alert(typeof json);//object
                    //JSON.stringify(object) 把json对象转为字符串
                    var str = JSON.stringify(json);
                    //alert(str);//{"name":"柳岩","age":18}
                    //alert(typeof str);//string
                    //alert(str.name);//undefined
                    //JSON.parse(string) 把字符串转为json对象
                    var obj = JSON.parse(str);
                    alert(typeof obj);			//object
                    alert(obj.name+"\t"+obj.age);//柳岩	18
                    

免责声明
本网站所收集的部分公开资料来源于AI生成和互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,人围观)

还没有评论,来说两句吧...

目录[+]