JavaScript修炼之路-筑基篇(一)输入输出、变量声明

目录
1、引用js
2、输入与输出
3、变量声明、数据类型(一般只需记住用var来声明变量即可)
4.作用域
5、其它
1、引用js
行内式js,直接写到元素内部
eg:

内嵌的js(与写css style一样)

外嵌式(单独写在js文件里面,然后在html里面写以下引用)最常用的方式。


2、输入与输出
alert ('wochaochao') 在主界面弹出警示框;
prompt(''); 弹出输入框;注意:prompt取过来的值是 字符型的
console.log(’‘);在控制台进行输出;
一般会要用于进行算法结果输出,以验证算法的正确性。
当出现需要输出单或双引号时,进行引号嵌套:内单外双 或者 外单内双
(字符串)转义符,无需特意记住

  1. \n换行
  2. \\斜杠\
  3. \ttab缩进
  4. \b空格
3、变量声明、数据类型(一般只需记住用var来声明变量即可)
  • var是js关键字用来 声明变量
var myname = ’字也可8989数字也可‘;
js中 var 变量 是 动态类型,根据右边的值进行来确定变量类型。
  • 变量用于存储用户输入的数据
    eg:ver a = prompt(’请输入你的名字‘);
    alert(a);
    console.log(a)
  • 判断非数字
    console.log(isNaN(101)); 输出false
    当括号内是非数字 时, 输出ture
    (验证用户输入是否合法)
  • 获取数据类型
typeof
console.log(typeof(a));
  • 数据类型转化
toString(); 转化为字符串:
var a; //变量
a.tostring();
String()强制转换:
(console.logString(a));
  • 加号拼接字符串:
console.log(a+' ');
  • 转化为数字型
parseInt(string) 如parselnt('78')
最后得到的是整数(不进位)
parseInt(120px); 得到120去掉单位但不能去掉加在前面的字母;
parseFloat(变量);
不同的是能转换化为小数
Number()强制转化
利用隐式转化,运用算术运算
console.log('12'-0);
4.作用域
全局作用域:
变量在script标签里声明,全局都可以使用。
在函数内部没有声明,直接赋值的变量也是全局变量。(不建议使用)
(关闭游览器才会销毁,比较占据内存)

局部作用域;
在函数内部,只能在函数内部起作用。
函数的形参也算是局部变量。
(程序执行完毕就会销毁,比较节约内存资源)

作用域链(在我看来甚至不需要了解):
函数里面还有函数,那么这个作用域里面就又可以诞生一个作用域
根据在 内部函数 可以访问 外部函数变量的这种机制,用链式查找决定哪些数据能被内部函数访问,就称作用域链。就近原则
5、其它
简单数据类型 (值类型)存储变量存(在栈中)的是值本身
string、number、boolean、underfined、null
(有点特殊返回的是一空的对象object,如果打算存储对象,暂时没想好放什么,这个时候就给null)
进行传参的时候,形参不改变实参的值(都在栈中进行)
复杂数据类型在储存时变量(栈)中储存的仅仅时地址,值储存在堆里
引用类型:通过new关键字创建的对象(系统对象、自定义对象),Object、Array、Date
传参的时候,栈中放地址,传参传的地址(把地址给了形参)都指向同一个堆中的值,函数中改变了值的话, 形参和实参的地址都指向那个改变了的值
堆和栈
(1)栈(操作系统):由操作系统自动分配释放存放函数的参数值、局部变量的值等。其操作方法类似与数据结构中的栈;
简单的数据类型存放到栈里面
(2)堆(操作系统):储存复杂类型(对象),一般由程序员分配释放,若程序员不释放,由垃圾回收机制释放
复杂数据类型存放在堆里面

祝你学习快乐!
【JavaScript修炼之路-筑基篇(一)输入输出、变量声明】

    推荐阅读