JavaScript基础知识

本文深入讲解JavaScript的基础知识,包括JS的组成、变量类型、类型转换、作用域、闭包等内容,并探讨了兼容性问题及命名规范。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JS组成

ECMAScript(解释器:把我们的语言解释给计算器)核心

DOM(Document Object Model)赋予了js操作html的能力
document

BOM(Browse Objectr Model)操作浏览器(例如谈窗口等和浏览器打交道的操作) window

兼容性
ECMA 几乎没有兼容问题

DOM 有一些操作不兼容

BOM 无兼容问题(完全不兼容)


变量类型

类型:typeof运算符

提示:一个变量最好只存一种类型数据

number 数字

<script>
 var a=12;     
 alert(typeof a);  //弹出number
 </script>

string 字符

<script>
alert(typeof a);   //弹string 
</script>

**以下 <script></script>省略

boolean 布尔

 var a=true;     
 alert(typeof a);//弹出 boolean


function 函数

a=function(){ 
alert('aaa') ;
};  
    //弹出function


object 对象

a=document;   
alert(typeof a);   //弹出object


undefind 未定义(1.真的未定义2.定义了但没有值)
1.


 alert(typeof b);

2.


 var b; 
 alert(typeof b)


字符串转成数字

parseInt
例1:


var a='12';
alert(parseInt(a)+1);   //弹出结果13

例2:


var a='12px';
alert(parseInt(a));   //弹出结果12

例3:


var a='12px45144';
alert(parseInt(a));   //弹出结果12

例4:


var a='abc';
alert(parseInt(a));   //弹出结果NaN(Not a Number非数字)

总结:从第一个字符开始判断是否为数字,遇到不是数字的就会跳出;


判断parseInt结果是否为NaN

例1:


var a=parseInt('abc');
var b=parseInt('ccc');
alert(a==b);          //结果本应该为true,但是此时弹出结果为false

结论:NaN和NaN不相等。

例2:


var a=parseInt('abc');
alert(isNaN(a));   //结果为true

结论:判断parseInt结果是否为NaN,可以用js里面提供的一个函数isNaN()来判断 。


parseInt是用来转换成整数的
例:


var a='3.5';
alert(parseInt(a));  // 结果为3

parseFloat是用来转换成小数的


var a='3.5';
alert(parseFloat(a));  // 结果为3.5

若想转一个数字,但不知道是小数还是整数,不用担心,用parseFloat都可以
例:


var a='3';
alert(parseFloat(a));  // 结果为3


隐式类型转换

例1:


var a=5; //数字
var b='5'; //字符
alert(a==b); //结果为true               
alert(a===b); //结果为false  

双等号先转换类型,然后比较
三等号不转换类型,直接比较
例2:


var a='12';
var b='5';
alert(a+b);  //结果为125 

“+”号的功能
1.字符串连接
2.数字相加

例3:


var a='12';
var b='5';
alert(a-b);  //结果为7 

“-”号作用 数字相减


变量作用域(变量作用范围)

例1:


function aa()
{
var a=12;   //局部变量       只能在定义的函数中使用,即目前只能在aa()中使用
} 

function bb(){

alert(a);                   //此处报错 "此处a未定义"

}

例2:


var a;              //全局变量       在任何地方都能用
function aa()
{
a=12;   
} 

function bb(){

alert(a);                   //弹出12

}


闭包

什么是闭包:子函数可以使用父函数的局部变量


function aa()   //父函数
{
var a=12;   
function bb(){   //子函数

alert(a);                 

}

bb();

} 
aa();  //弹出12


命名规范

可读性(能看懂)
类似aaa、bbb的少用,尽量使用一些可以从名字看出意义的名字

规范性(符合规则)

匈牙利命名法:
类型前缀:
这里写图片描述

首字母大写
例如:getElementById oDivUserLogin
反例:getelementbyid odivuserlogin

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值