当前位置: 首页 > news >正文

前端学习 JavaScript

1.变量的定义

隐藏试定义变量----->不需要写数据类型(js本身是一个弱类型)(c语言和java是强类型的语言)

     a="123";//string a="123";b=1;//int b=1;c='a';//char c='a';


显示定义  使用var关键字来表述数据类型

     var h="123";var i='a';var j=15.9;

  数据类型表述数据在内存当中的存储形式
int:在内存当中开辟32bit大小内存空间    1bit符号位(表示正负)31bit数据位
char:在内存中开辟一个16bit的内存空间   字符本身无符号,所以就是一个16bit的空间
float:在内存当中开辟32bit大小内存空间  1bit符号位(表示正负) 8bit表示阶位(小数点的位  置)23bit数组位
强类型语言:需要提前定义好数据类型,以便直接存储数据
弱类型语言:不需要提前定义好数据类型,但是在存储数据之前需要根据数据的情况来判断数据的类型,以便开辟内存空间。

2.js的自动类型转换

     var a="3.14";//字符串类型的数据var b=a-2;//在js当中可以 这就是自自动类型转化(将字符串类型转化为数值类型)var c="abc";var d=c-2;alert(b);//输出alert(d);

说明字符串类型是数字的可以自动转换进行操作,字母的不可以。

3.强制类型转换

toString():将布尔值、数值转换为字符串
parseInt():将布尔值、字符串转换为整数
parseFloat():将布尔值、字符串转换为浮点型

var e=parseInt(a)-2;//输出1
alert(e+"\n"+b)

第一个是将var a="3.14"强制转换为a=3进行操作。

4.变量作用域

变量:全局变量和局部变量
局部变量:定义在方法当中的变量
全局变量的作用范围是全局
局部变量的作用范围只在方法当中

     var a="全局变量";function myfun(){age=20;var f="局部变量"alert(a);}myfun();//调用方法alert(a);alert(f);//当全局变量和局部变量重名时,在方法内部局部变量覆盖全局变量,在方法外部局部变量失效var h="hello";function test(){var h="world";alert(h);}test();alert(h);

不显示h的输出,证明局部变量只能在方法中有效

当全局变量和局部变量重名时,在方法内部局部变量覆盖全局变量,在方法外部局部变量失效

5.变量提升

在方法当中定义的变量自动提升到方法的最顶部,但是值提升变量不提升值

     var a=10;function test(){//var a;console.log(a);//报错,说明没有进行变量提升//a=20;let a=20;//var a=20;console.log(a);}test();

var a=20;  变量自动提升到方法的最顶部,但是值提升变量不提升值

let a=20; 这种定义没有完成提升变量的操作

6.常量

    const MAX_AEG=100;//正确的定义常量形式MAX_AEG=101;//一旦定义好常量的值后,常量的值不能改变var a=10;//变量时值能变化的量a=11;const MAX_HEIGHT;//不对,变量必须有初始值

常量:不变的量,约定:定义常量使用大写字母

7.js当中的基本数据类型

js当中的基本数据类型:数值类型(包含整数和浮点数)var/let   布尔型(表示true和flase)var/left 字符串类型   undefi类型:(表示创建好变量但是没有赋初始值)var a; null类型:变量值为null   var a =null;
c语言当中的:整形:short int long 浮点型:float double 字符型:char;c语言当中没有布尔类型 0(表示flase)1(表示true)
数值类型 :整数  浮点数

   var a=10;var b=10/0;//0不能是除数//js当中一个特殊的数字NaN(Not a Num)非数var c=Number.NaN;console.log(a);console.log(b);//Infinity正无穷大console.log(c);//+-*/ 整数/整数 /表示整除   浮点数/整数 /正常的 c语言当中console.log(9/2);console.log(9.2/2);

8.字符串

   var text="sdafrawrafa3rat";var a=text.charAt(0);//获得第一个字符!!!!重要var b=text.charCodeAt(1);//获得第二个字符对应的unicode值var c=text.length;//获取整个字符串的长度!!!!重要var d=text.toUpperCase();//转化为大写var f=text.indexOf("af");//寻找1字符串第一次出现的位置,如果没有就返回-1,如果有就返回位置!!!!var g=text.indexOf("a",6);//跳过6个字符后,寻找1字符串第一次出现的位置,如果没有就返回-1,如果有就返回位置!!!!var k=text.substring(3,6);//从原字符串中截取索引除3,4,5三个字符!!!!!var r=text.slice(3,10);//  从3开始(包括该位置的字符到10结束(不包括该位置的字符)提取并返回这个范围内的子字符串!!!!!var arr=text.split("a");//以a来把字符串分割成数组(一般以,或者空格来进行分割)console.log(a);console.log(b);console.log(c);console.log(d);console.log(f);console.log(g);console.log(k);console.log(r);console.log(arr);

http://www.dtcms.com/a/457647.html

相关文章:

  • 深圳约的网站设计企业申报系统
  • 吴江盛泽建设局网站一个专门做标题的网站
  • PID公式的部署与选择
  • 拼多多前端面试题及参考答案(200道-下)
  • Symmetric functions and hall polynomials 1.1
  • 深圳seo网站优化广东网约车涨价
  • 【LLM】知识图谱和LLM的结合
  • 扩散模型DDPM数学推导过程完整版(下)
  • 重庆网站建设入门培训扬州电商网站建设
  • 做国际网站有什么需要注意的福州网站建设吧
  • Echarts极坐标系示例
  • HarmonyOS应用开发深度解析:ArkTS语法精要与状态管理实践
  • 园林景观中企动力提供网站建设网店代理货源网
  • 酒店网站建设建设网站ppt
  • docker学习笔记详记
  • 可做外链的视频网站企业建一个网站
  • 滑动窗口专题总结:从懵逼到掌握valid计数器
  • 深圳市盐田区建设局网站WordPress制作安卓
  • Next.js useState useEffect useRef 速记
  • 图论算法刷题的第五十一天
  • Linux自动化构建工具make/Makefile及Linux下的第一个程序—进度条
  • Vue使用原生方式把视频当作背景
  • 铜陵app网站做招聘信息wordpress第一篇文章id
  • 从玩具到工业:基于 CodeBuddy code CLI 构建电力变压器绕组短路智能诊断系统
  • wordpress 中英文网站模板手机创建网页
  • 基于 GEE 的 Sentinel-2 光谱、指数、纹理特征提取与 Sentinel-1 SAR 数据处理
  • 嘉兴网站排名优化价格windows 安装 wordpress
  • 2-C语言中的数据类型
  • 免费企业营销网站制作公司建网站有何意义
  • LeetCode算法日记 - Day 66: 衣橱整理、斐波那契数(含记忆化递归与动态规划总结)