js基础,变量、常量-(数据类型)

一、js基础

1.外部引入js

<script src="a.js" async defer></script>
<script>
    ...
</script>

ES6模块化引入js

import Box from "./js/Box.js";

2.行内js的写法

<button onclick="alert('aaa')">按钮</button>
<a href="javascript:alert('aaa')">超链接</a>

点击空连接不会刷新页面的方法

<a href="javascript:void(0)">超链接</a>

3.三种弹窗

三个弹出框在弹出时不继续执行后面的语句,等待用户操作完成后继续

alert("aaa");//弹出框
confirm("你好");//点击确定时返回true,否则返回false
prompt("请输入你的年龄","18岁");//输入弹出框,确定后会返回输入的内容

二、变量常量

1.变量的定义

var a=4;
var b=5;
var fuckYou=520;
//变量命名为小驼峰
//临时变量或者参数,起名时用_开始

//常量定义
const FUCK //常量定义后名称大写

2.数据类型

基础类型:string(字符型),number(数值型),Boolean(布尔型),undefined,null
复杂类型:object(对象)
前五种基础类型都存储在栈中,对象存储在堆中。

string字符类型

var str1 = "1";
var str2 = '1';
var str3 = `1`;//es6可以用``来定义string类型
var str4 = "这个'新的'鞋子价格不错";
var str5 = '{"a":4,"b":"10"}';

number 数值类型

NaN是number类型,且NaN不等于NaN

var num1 = 1;//正整型
var num2 = -1;//负整型
var num3 = 1.3;//浮点型
var num4 = 056;//8进制数值,0起头,数值不能大于7
var num5 = 0xFF;//16进制数值,0x起头,单个数值不能大于F
var num6 = 1.2e+3;//科学计数法
var num7 = 1.2e-3;//科学计数法

Boolean 布尔类型

var bool1=true;
var bool2=false;

undefined 未定义

值和类型相同

var und1;
var und2=undefined;
console.log(und3);//报错 und3 is not defined
console.log(typeof und1);//undefined
console.log(typeof und2);//undefined

null类型

null的类型object型

var nu = null;
console.log(nu);//null 
console.log(typeof(nu));//object
console.log(undefined == null);//true
console.log(undefined === null);//false

存在栈中,修改的是值

var num=3;
var num1=num;
num=10;
console.log(num1);//3

以上所描述的类型都存储在栈中


object对象类型则是存储在堆中的

object 对象类型

  • 对象包含了属性名和属性值还有方法,对象可以包含对象
  • 属性名叫做键(key),属性值叫做值(value) 键值对
  • 对象就是以键值对的形式存储数据的。
var obj = {
   // 属性
    id: 4001,
    name: "iphone11",
    price: "4999",
    getSum: function () {
    
    }
};
console.log(typeof obj);//object

变量名存储的是引用地址,obja=objb相当于将objb的引用地址赋给obja,则b内属性更改a也会相应的更改

var obj = {
    a: 1,
    b: 2
}
var obj2 = obj;//将引用地址赋值给obj2
obj.a = 10;
console.log(obj2.a);//10

存在堆中,修改引用地址值的内容,地址不会发生改变

var obj = {a:1};
var obj1=JSON.parse(JSON.stringify(obj));
var obj={a:10};
console.log(obj);//{a:10}
console.log(obj1);//{a:1}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值