JavaScript连载3-变量内存分析、常量、数据类型

一、变量的内粗分析

1.变量的默认值

(1)如果变量初始化时没有赋值,那么里面存储的时undefined

(2)示例

var lk;

console.log(lk);

2.同时声明多个变量

两种方式

var name,age,sex;

name = "kdfg";

age = 2;

//或者

var name = "jsoaf",age,sex="男";

3.在内存中的表现形式

栈内存(存放变量等,类似于Java),堆内存

4.变量命名规则

(1)以字母、数字、下划线组成,且不能以数字开头;(2)区分大小写;(3)不能使用关键字和保留字。

5.如何将一段代码失效,或者说让编译器认为这个一段纯文本


<script type="text/html">

/**

*使用type="text/html"就是指定了,这个script标签里面的内容都是文本,而不是一段代码

*/

</script>

6.变量命名规范:遵循驼峰命名法

7.常量演示

命名方式:

const APO = "常量不能再被重复赋值";

8.总结:常量和变量的存储方式是一致的,只不过常量必须要有初始值,而且值是不允许改变的,而变量可以无初始值,且可以改变。

9.常量与字面值的区别:

常量与字面量都是不会被改变的,常量为存储数据的容器,而字面量为等号右侧的值,字面量是由字符串,数字等构成的字符串或者数值

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>D3_1_VarityMemoryAnalysis</title>

</head>

<body>

<script type="text/html">

/**

*使用type="text/html"就是指定了,这个script标签里面的内容都是文本,而不是一段代码

*/

</script>

<script >

    var lk;

    console.log(lk);//undefined

    var name,age,sex;

    name = "lk";

    age = 2;

    var name1="lk",age,sex="女";

    console.log(age,name);

?

    //不使用中间变量,交换两个数值变量的值

    var num1 = 4,num2 = 2;

    num1 = num1 + num2;//4 + 2 = 6

    num2 = num1 - num2;//6 - 2 = 4

    num1 = num1 - num2;//6 - 4 = 2

    //这样就完成了交换,而不需要使用其他变量

?

    //常量解析

    const API = "http://itlike.com";

    console.log(API);

</script>

</body>

</html>

二、数据类型

1.概念:程序在运行过程中会产生各种各样的临时数据,为了方便数据的运算和操作,JavaScript对这些数据进行了分类,提供了丰富的数据类型

2.数据类型的划分

(1)简单数据类型:Number,String,Boolean,Undefined,Null

(2)引用(复杂)数据类型:Object

3.数据类型查看:

(1)typeof操作符:会将检查的结果以字符串的形式返回给他们?

4.Number

(1)在JS中所有的数据都是Number类型(整数和小数)

(2)由于内存的限制,ECMASript并不能保存世界上所有的数值

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>D3_2_DataType</title>

</head>

<body>

<script>

    console.log(typeof 10);

    console.log(typeof "dhsjodf");

    console.log(typeof 2.32);

    //最大值

    console.log(Number.MAX_VALUE);

    //最小值

    console.log(Number.MIN_VALUE);

    //无穷大:Infinity,如果超过了最大值会返回该值

    console.log(Number.MAX_VALUE + Number.MAX_VALUE);

    //无穷小:-Infinity,如果超过了最小值会返回该值

    console.log(typeof Infinity);

    console.log(typeof -Infinity);

</script>

<script id="String"

<script></script>

</body>

</html>

三、源码:

D3_1_VarityMemoryAnalysis.html

D3_2_DataType.html

地址:

https://github.com/ruigege66/JavaScript/blob/master/D3_1_VarityMemoryAnalysis.html

https://github.com/ruigege66/JavaScript/blob/master/D3_2_DataType.html

2.CSDN:https://blog.csdn.net/weixin_44630050

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人账号,仅用于技术交流,后台回复“礼包”获取Java大数据学习视频礼包

原文地址:https://www.cnblogs.com/ruigege0000/p/12650313.html

时间: 2024-08-28 20:42:28

JavaScript连载3-变量内存分析、常量、数据类型的相关文章

黑马程序员——C语言变量内存分析与scanf函数

Java培训.Android培训.iOS培训..Net培训.期待与您交流! 1.变量的内存分析 1)变量以字节为单位,每个字节都有自己的内存地址,根据地址就可以找到该字节.整个内存相当于一整个酒店,而酒店以房间为单位,在这里每个房间就相当于是每个字节,地址就是房号,根据房号可以找到房间(根据地址也可以找到内存中的字节).相邻房间的房号是连续的,相邻字节的地址也是连续的.计算机中通常以十六进制表示地址.变量所占用字节数跟类型有关,也跟编译器环境有关 2)内存由大到小寻址,优先分配内存地址较大的字节

javascript基础编程の变量、对象、数据类型及函数

在web标准中.网页由结构.表现形式和行为三个部分组成. 结构标准---->XHTML: 表现形式标准----->CSS: 行为标准----->javascript: javascript是一种专门设计用来给网页添加交互性的编程语言,最初由Netscape公司开发.最后提交给了欧洲计算机制造商协会(ECMA).    一.javascript特点: 1.javascript是一门解释型语言,这意味着javascript代码不须要预先编译就能够运行. 2.javascript不能脱离浏览器

「C」关键字、标识符、注释、内存分析、数据、常量、变量

一.关键字 C语言提供的有特殊含义的符号,共32个. 一般在Xcode中关键字全部显示紫褐色,关键字全部都为小写.如int.return等. 二.标识符 标识符是程序员在程序中自定义的一些符号和名称.关键字是C语言默认提供的,标识符是程序员自定义的.如函数的名称等,用来区分各种事务. 命名规则: 只能由26个小写字母,0-9的数字以及下划线_组成. 严格区分大小写. 不能以数字开头. 不可以使用关键字作为标识符. 命名规范: (1)尽量起有意义的名称. (2)多个单词可以使用驼峰标识(第二个单词

javascript中的变量、作用域和内存问题

[变量][1]定义:可变的量,相当于给一个不定的数据起了一个外号.变量是存储信息的容器.[2]特性:js中的变量是松散类型的,可以保存任何类型的数据.它只是在特定时间用于保存特定值的一个名字而已.由于不存在定义某个变量必须要保存何种数据类型值的规则,变量的值及其数据类型可以在脚本的生命周期内改变.[3]变量声明:变量可以在声明时赋值,但不能有其他操作,如+=.-=等 var a = 2;//是正确的 var a += 2;//是错误的 var a = 2++;//是错误的,++只能用于变量,不能

一篇文章带你了解JavaScript中的变量,作用域和内存问题

作者 | Jeskson 来源 | 达达前端小酒馆 1 在JavaScript中的变量分别区分为两种: 一种为基本类型值,一种为引用类型值. 基本类型值指的是简单的数据段 引用类型值为可能由多个值组成的对象 引用类型的值是保存在内存中的对象,JavaScript不允许直接操作对象的内存空间,实际上操作对象的引用而不是实际对象. var dada = new Object(); undefined dada.name = "dada"; "dada" console.

DEBUG模式下, 内存中的变量地址分析

测试函数的模板实现 [cpp] view plain copy /// @file my_template.h /// @brief 测试数据类型用的模板实现 #ifndef MY_TEMPLATE_H_2016_0123_1226 #define MY_TEMPLATE_H_2016_0123_1226 template<int iArySize> void fnTestDataType() { char szBuf[iArySize] = {'\0'}; unsigned short wT

变量的内存分析

一.字节和地址 1.内存以字节为单位 每个字节都有自己的内存地址,根据地址就可以找到该字节.整个内存相当于一整个酒店,而酒店以房间为单位,在这里每个房间就相当于是每个字节,地址就是房号,根据房号可以找到房间(根据地址也可以找到内存中的字节).相邻房间的房号是连续的,相邻字节的地址也是连续的.计算机中通常以十六进制表示地址. 2.不同数据类型占用的字节是不一样的,数据越大则占用的字节数越多.如在64位编译器下,int类型占据4个字节,char类型占据1个字节. 二.变量的存储 1.内存寻址由大到小

java执行程序的内存分析系列专栏二之static变量和方法内存分析

昨天写了简单的聊了下java执行程序时简单的内存划分,今天我们接着往下聊,聊聊static变量和方法的内存分析. 1.static变量和方法的第一个特性内存分析 statiic变量和方法的第一个特性能通过类名.static变量和类名.static方法的形式调用,而普通只能对象的形式调用.但具体为什么是这样的,这得分析static变量和方法他们在内存中怎样分配的,因此在这里我首先建立一个学生类,里面有一个普通成员变量和一个静态成员变量以及一个普通方法和一个成员方法,然后建立了一个测试学生的类. 1

java基础知识回顾之---java String final类 容易混淆的java String常量池内存分析

/** *   栈(Stack) :存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放  在常量池中). 堆(heap):存放所有new出来的对象. *   静态存储:存放静态成员(static定义的). 常量池(constant pool):在堆中分配出来的一块存储区域,存放储显式的String常量和基本类型常量(float.int等).另外,可以存储不经常改变的东西 *                       p