作用域 - 作用域指一个变量的作用的范围 - 在JS中一共有两种作用域 1.全局作用域 - 直接编写在script标签中的JS代码,都在全局作用域- 全局作用域在页面打开时创建,在页面关闭时销毁 - 在全局作用域中有一个全局对象window,它代表的是一个浏览器的窗口,它由浏览器创建我们可以直接使用. - 在全局作用域中:创建的变量都会作为window对象的属性保存 创建的函数都会作为window对象的方法保存,这里有没有想起alert()方法 - 全局作用域中的变量都是全局变量,在页面的任意的…
这个系列博客主要用来记录本人学习JavaScript的笔记,从0开始,即使有些知识我也是知道的.但是会经常忘记,干脆就写成博客,没事的时候翻来看一看,留下一点学习的痕迹也好.可能写博客的水平暂时不太好,但是慢慢来吧! 想要走前端开发的路,JavaScript是最核心的内容,必须熟练掌握,尽量不要急于求成,把一些东西理解得比较透彻再去接触像vue之类的一些框架,不然学了也等于白学.好,废话不多说,直接开始JavaScript的学习. 首先JavaScript是解释型语言,和Java语言不一样,不需…
原型(prototype) - 创建一个函数(所有函数)以后,解析器都会默认在函数中添加一个属性prototype prototype属性指向的是一个对象,这个对象我们称为原型对象. 创建一个函数MyClass(). function MyClass(){} - 当该函数作为构造函数使用,它所创建的对象中都会有一个隐含的属性指向该原型对象. 这个隐含的属性可以通过对象.__proto__来访问.如果这个函数是个普通函数,那么prototype属性也没什么作用. 调用构造函数,创建一个对象. va…
变量的提前声明(全局作用域) - 我们知道js的代码是自上而下执行的.如下,console.log(a)在var a=10前面,但是结果输出的是undefined. - 使用var关键字声明的变量,会在所有的代码执行之前被声明(但是不会赋值):也就是说在执行代码之前凡是var 声明的变量都已经是存在了,就已经是在栈内存中了. - 但是如果声明变量时不适用var关键字,则变量不会被声明提前,会报错. 函数的提前声明(全局作用域) - 创建一个函数有3中方式,其中函数声明方式和上边var 声明变量是…
-强制类型转换为String 1.方式1 调用被转换数据的toString()方法 number类型值.布尔类型值.都可以调用toString()方法强制转换.但是null值和undefined值不行,这两个类型的值没有toString()方法. 补充一下toString方法的知识,其实还可以当一个简单的进制转换器,因为是初学阶段,所以对于这个方法的学习后续再继续补充. 十进制装换为其他进制. .toString(2)表示转换为2进制 .toString(8)表示转换为8进制 .toString…
JavaScript中有6种数据类型 一.基本数据类型 - String 字符串 JS中的字符串需要使用引号引起来双引号或单引号都行 但是要注意的是某种引号嵌套使用的话,需要加上 \ 转义.比如说我们要输出一句话. var str="面试官问我:"你在学校最有价值的经历是什么?"" 这样使用引号是会报错的. 报错原因:你在学校最有价值的经历是什么?这一句首先没有被引号括起来,被识别为标识符,并且是非法的. var str="面试官问我:\"你在学…
JavaScript代码一般编写在哪里呢? 看到这个问题,第一个反应就是,JavaScript那当然是编写在<Script></Script>这对标签中啊!然而! 1.可以编写到标签的指定属性中 <button onclick="alert('写在onclik属性中');">按钮</button> <a href="javascript:alert('写在href属性中');">超链接</a>…
正则表达式的使用 先说RegExp对象的一个方法 test() - 使用这个方法可以用来检查一个字符串是否符合正则表达式的规则,如果符合则返回true,否则返回false. 1.用正则表达式来检查一个字符串中是否含有字母a var reg = new RegExp("a"); var s="abcdef"; console.log(reg.test(s)); 创建了一个RegExp对象reg,匹配规则是含有字母a,匹配模式没写,然后创建一个字符串s,reg调用方法t…
RegExp 对象 RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具. 创建 RegExp 对象的语法(构造函数方式): pattern:正则表达式,attributes:匹配模式 var reg=new RegExp(pattern, attributes); 直接量语法(字面量方式):类似于var obj={}:var arr=[]. var reg=/pattern/attributes…
String对象 在底层,字符串是以数组的形式保存的.比如说一个字符串"String"以["H","t","r","i","n","g"]形式保存.所以Sting对象有个属性length,可以获取字符串(对象)的长度.其实这个对象加不加都可以,因为字符串变量也会经过包装可以使用String对象的属性和方法. charAt()- 根据索引获取指定的字符 charCode…