js 回顾知识总结一
1.js数据类型?
基本数据类型:String(字符串)、boolean(布尔值)、Number(数字)、undefined(未定义)、null(空)
引用数据类型:Object(对象)、Array(数组)、Date(时间)、RegExp(正则)、Function(函数)
基本数据类型vs引用数据类型区别?
(1)引用类型值可添加属性和方法,而基本类型值则不可以
//为引用类型值添加属性
           var p = new Object();
           p.age=11;
           alert(p.age);//11
//为基本类型值添加属性
           var name = 'a';
           name.age = 11;
            alert(name.age); //undefined
(2) 在复制变量值时,基本类型会在变量对象上创建一个新值,再复制给新变量。此后,两个变量的任何操作都不会影响到对方;而引用类型是 将存储在变量对象的值复制一份给新变量,但是两个变量的值都指向 存储在堆中的一个对象,也就是说,其实他们引用了同一个对象,改变其中一个变量就会影响到另一个变量。
//引用类型值,以数组为例
//1.对其中一个变量直接赋值不会影响到另一个变量(并未操作引用的对象)
           var a = [1,2,3];
           var b = a;
           a = [1,2,3,4];
           alert(a);//1,2,3,4
           alert(b); //1,2,3
//2.使用push(操作了引用的对象)
           var a = [1,2,3];
           var b = a;
           a.push(4);
           alert(a);//1,2,3,4
           alert(b); //1,2,3,4
检测类型:
typeof:确定变量是字符串、数值、布尔值还是undefined的最佳工具。
var num = 1;
var a = 'a';
var b;
var flag = true;
var o = null;
alert(typeof num); //number
alert(typeof a); //字符串
alert(typeof b); //undefined
alert(typeof flag); //boolean
alert(typeof o); //object instanceof : 判断是否某个对象类型var a = [1,2,3];
alert(a instanceof Object); //true
alert(a instanceof Array); //true
alert(a instanceof RegExp); //false
js 回顾知识总结一的更多相关文章
- [JS复习] JS 基础知识
		项目结尾,空闲时间,又把<JS 基础知识> 这本书过了一遍,温故知新后,很多知其然不知其所以然的内容 豁然开朗. [1. 用于范围的标签] display :inline or bloc ... 
- HTML+CSS+JS基础知识
		HTML+CSS+JS基础知识 目录 对HTML+CSS+JS的理解 基础知识 对HTML+CSS+JS的理解 基础知识 插入样式表的三种方式 外部样式表:<link rel="sty ... 
- Node.js基础知识
		Node.js入门 Node.js Node.js是一套用来编写高性能网络服务器的JavaScript工具包,一系列的变化由此开始.比较独特的是,Node.js会假设在POSIX环境下运行 ... 
- 网站开发进阶(十五)JS基础知识充电站
		JS基础知识充电站 1.javascript alert弹出对话框时确定和取消两个按钮返回值? 用的不是alert对话框,是confirm confirm(str); 参数str:你要说的话或问题: ... 
- NodeJs>------->>第三章:Node.js基础知识
		第三章:Node.js基础知识 一:Node.js中的控制台 1:console.log.console.info 方法 console.log(" node app1.js 1> ... 
- JS底层知识理解之执行上下文篇
		JS底层知识理解之执行上下文篇 一.什么是执行上下文(Execution Context) 执行上下文可以理解为当前代码的执行环境,它会形成一个作用域. 二.JavaScript引擎会以什么方式去处理 ... 
- 零散的JS和node.js小知识
		JS的连续赋值和曾经出现的怪异情况 let a=1; let b=a=3; 如上的真实赋值过程 => a=1 => a=3 => b=3 => 一般来说,等号是从右向左赋值的 ... 
- 前端学习:JS面向对象知识学习(图解)
		前端学习:JS面向对象知识学习(图解) 前端学习:JS(面向对象)代码笔记 JS面向对象图解知识全览 创建类和对象 方式1:使用Object()函数 方式2:使用自变量 方式3:使用工厂函数 创建多个 ... 
- JS基础知识二
		JS控制语句 switch 语句用于基于不同的条件来执行不同的动作 <script> function myFunction(){ var x; var d=new Date().getD ... 
随机推荐
- Go 指针声明后赋值,出现 panic: runtime error: invalid memory address or nil pointer dereference
			指针基础知识package main import "fmt" func main() { var p *int p = new(int) *p = 1 fmt.Println(p ... 
- nginx的请求限制
			一.http协议的连接与请求 总结: HTTP请求是建立在一次TCP连接的基础之上. 一次TCP请求至少产生一次HTTP请求. 二.连接限制 limit_conn_module 配置语法: Synta ... 
- 一、初识Spring Boot框架
			一.搭建Spring Boot环境 1.选择Project,选择Spring Initializr 2.选择Sdk与默认url 3.点击 Next 4.修改一下Group信息和Artifacet,Ne ... 
- LC 759. Employee Free Time 【lock, hard】
			We are given a list schedule of employees, which represents the working time for each employee. Each ... 
- UDP打洞原理介绍
			NAT穿越模块的设计与实现 Internet的快速发展以及IPv4地址数量的不足使得NAT设备得到了大规模的应用,然而这也给越来越多的端到端通信也带来了不少的麻烦.一般来说,NAT设备允许内网内主机 ... 
- 解决 Elasticsearch 超过 10000 条无法查询的问题
			解决 Elasticsearch 超过 10000 条无法查询的问题 问题描述 分页查询场景,当查询记录数超过 10000 条时,会报错. 使用 Kibana 的 Dev Tools 工具查询 从第 ... 
- linux常用命令(17)find命令概览
			Linux下find命令在目录结构中搜索文件,并执行指定的操作.Linux下find命令提供了相当多的查找条件,功能很强大.由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时 ... 
- Golang- import 导入包的几种方式:点,别名与下划线
			包的导入语法 在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下: import( "fmt" ) 然后在代码里面可以通过如下的方式调用 fmt.Pr ... 
- 基于OpenCV的循环行、列移动函数circShift()
			///*12 在Matlab中有个circShift()函数,可以实现行.列的循环移动 /// 在返卷积运算中,会用到这个函数.所以,在Opencv中我也定义同样 /// 功能的函数 /// 该函数有 ... 
- Python爬虫学习==>第六章:爬虫的基本原理
			学习目的: 掌握爬虫相关的基本概念 正式步骤 Step1:什么是爬虫 请求网站并提取数据的自动化程序 Step2:爬虫的基本流程 Step3:Request和Response 1.request 2. ... 
