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 回顾知识总结一的更多相关文章

  1. [JS复习] JS 基础知识

    项目结尾,空闲时间,又把<JS 基础知识> 这本书过了一遍,温故知新后,很多知其然不知其所以然的内容 豁然开朗. [1. 用于范围的标签] display  :inline or bloc ...

  2. HTML+CSS+JS基础知识

    HTML+CSS+JS基础知识 目录 对HTML+CSS+JS的理解 基础知识 对HTML+CSS+JS的理解 基础知识 插入样式表的三种方式 外部样式表:<link rel="sty ...

  3. Node.js基础知识

    Node.js入门   Node.js     Node.js是一套用来编写高性能网络服务器的JavaScript工具包,一系列的变化由此开始.比较独特的是,Node.js会假设在POSIX环境下运行 ...

  4. 网站开发进阶(十五)JS基础知识充电站

    JS基础知识充电站 1.javascript alert弹出对话框时确定和取消两个按钮返回值? 用的不是alert对话框,是confirm confirm(str); 参数str:你要说的话或问题: ...

  5. NodeJs>------->>第三章:Node.js基础知识

    第三章:Node.js基础知识 一:Node.js中的控制台 1:console.log.console.info  方法 console.log(" node app1.js 1> ...

  6. JS底层知识理解之执行上下文篇

    JS底层知识理解之执行上下文篇 一.什么是执行上下文(Execution Context) 执行上下文可以理解为当前代码的执行环境,它会形成一个作用域. 二.JavaScript引擎会以什么方式去处理 ...

  7. 零散的JS和node.js小知识

    JS的连续赋值和曾经出现的怪异情况 let a=1; let b=a=3; 如上的真实赋值过程 => a=1 => a=3 => b=3 => 一般来说,等号是从右向左赋值的 ...

  8. 前端学习:JS面向对象知识学习(图解)

    前端学习:JS面向对象知识学习(图解) 前端学习:JS(面向对象)代码笔记 JS面向对象图解知识全览 创建类和对象 方式1:使用Object()函数 方式2:使用自变量 方式3:使用工厂函数 创建多个 ...

  9. JS基础知识二

    JS控制语句 switch 语句用于基于不同的条件来执行不同的动作 <script> function myFunction(){ var x; var d=new Date().getD ...

随机推荐

  1. koa 基础(十九)es6中的单例

    1.app.js /** * es6中的单例 * 实例化的时候,无论实例多少次,构造函数只执行一次,有利于提高性能 */ class Db { static getInstance() { /*单例* ...

  2. koa 基础(十六)koa 中 session 的使用

    1.app.js /** * koa 中 session 的使用 * 1.npm install koa-session --save * 2.const session = require('koa ...

  3. [Java]算术表达式组建二叉树,再由二叉树得到算式的后序和中序表达式

    Entry类: package com.hy; import java.io.BufferedReader; import java.io.IOException; import java.io.In ...

  4. 微信小程序之条件判断

    前文: 今天踩了一下午的坑,但是确实很简单的问题. 我说一下需求:扫描商品的二维码,从而判断,同一个二维码不可多次扫描: 点击扫一扫 会在灰色区域展示 扫描的商品信息,比如商品名称,商品码等,但是我们 ...

  5. T89379 【qbxt】复读警告

    T89379 [qbxt]复读警告 题解 这是一道DP题 设置状态  f[ i ][ j ]  前 i 个数中所选数字之和 % key 得 j 的最大方案数 当前我们该选择第 i 个数字了,那么这个数 ...

  6. linux下配置服务自动启动

    1.切换到/etc/rc.d/init.d目录下 2.新建脚本,step.sh 3.添加开机启动   chkconfig –add step.sh 4.chkconfig step.sh

  7. Selenium下Chrome配置

    地址:https://peter.sh/experiments/chromium-command-line-switches/ chrome_options.add_argument('--headl ...

  8. CDH spark 命令行测试

    一. 参考 https://www.cnblogs.com/bovenson/p/5801536.html [root@node- test]# chown hdfs:hdfs /root/test/ ...

  9. .net core cookie滑动过期设置

    HttpContext.SignInAsync( CookieAuthenticationDefaults.AuthenticationScheme, userPrincipal, new Authe ...

  10. python基础知识(字符串)

    定义字符串 ' '单引号 " "双引号  只能用于单行 '" '"三引号  可以用于多行 拼接字符串使用  +号链接 字符串只能链接字符串其他类型字符串需要用s ...