- 博客(29)
- 收藏
- 关注
原创 v-model双向数据绑定
双向数据绑定 主要用于给表单元素创建双向数据绑定。 即: 1.视图发生改变→数据发生对应的改变。即用户在视图(网页)上通过输入等操作,改变原数据。 2.数据改变→视图发生对应的改变。即在js中的数据本身发生改变(不由视图层面的操作导致的),视图要显示出最新的数据。 如: Vue的绑定方式 Vue一般通过v-model指令进行双向数据绑定: 1.视图发生改变→对应的数据发生改变:用户在输入框里输入的内容会被message变量接下来,改变了app.message的值。 2.被改变的app.message同时也
2022-03-30 15:45:32
5038
原创 var,let和const
声明变量的三大关键字: var let const 三者的区别: 1.var是在ES5中用于声明变量的关键字。var在局部环境中声明的是局部变量,在全局环境中声明的是全局变量(相当于不用var)。 var a = 0; // 相当于 a = 0 ,在全局作用域下声明了一个变量a并赋值0。 function fun(){ var a = 0; // 在fun函数作用域中声明了一个变量a并赋值;在函数外部无法访问,且与函数外部的变量a不为同一个变量,互不干扰。 console.log(a); }
2022-03-21 11:39:26
191
原创 Vue学习总结
Vue框架是什么? Vue源码主要实现了以下几个功能: 1.通过DOM获取html元素:相当于document.querySelector() 2.将想要显示出来的数据传递给对应的html元素 Vue的使用方法: 1.在标签中引入vue.js文件 2.new Vue()实例化,传入el和data 3.辅以vue指令的使用 Vue的MVVM模型 M-model:用于传入的数据,可自定义但多从服务器直接获取。 V-view:在页面上显示出来的结果 VM-view model:是model和view的中间桥梁,即
2022-03-14 10:37:44
1530
原创 AJAX简介
AJAX(Asynchronous Javascript And XML,异步JavaScript和XML),用于在客户端和服务器之间进行数据传输,从前使用的是XML语言格式,现多使用更简洁JSON作为替代。 HTTP协议 包括以下4个部分: AJAX的缺点: 由于是异步js,所以当用户没有出现行为时,页面本身并没有对应的数据存在,因此浏览器爬虫是抓取不到这部分内容的。 ...
2022-01-21 10:00:22
463
原创 JSON简介
JSON(Javascript Object Notation)的作用:用于在不同的编程语言中进行数据交互 由于JS中的对象在其他语言(如服务器语言Java、php等)中无法被读取,因此要使用JSON将其转化为可以被其他语言读取的形式,以达到在网页和服务器之间传递数据的作用。 JSON只有两种书写格式: 1.以对象的形式转化、传递数据:{ } // 以对象的形式传递数据时,属性名一定要加双引号 2.以数组的形式转化、传递数据:[ ] JSON只能转化、传递以下6种类型的数据: 1.字符串 2.数值
2022-01-19 16:13:33
930
原创 JS内存问题:栈和堆
一、栈内存:专门用于保存全局变量/局部变量和基本数据类型的内存空间 栈 栈 变量名 基本数据类型的值 变量名 对象的地址值 二、堆内存:专门用于保存对象的内存空间 特点:只要是对象相关的信息,如对象的属性、方法,都保存在堆内存中,它不以全局变量或局部变量的形式存储在栈内存,所以我们访问或调用时需要用到(obj.属性名/方法)的语法。 三、对比 1.栈内存中保存的是基本数据类型值本身,当要保存的内容是一个对象时,栈只能保存对象的地址值,而不保存对象本身。 2.堆内存中只保存对象,每个
2021-06-16 10:15:31
208
原创 检测JS数据类型的方法
一、typeof 语法:typeof + 数据 返回值:数据类型的字符串形式 二、instanceof:用于判断对象的具体类型,如Array,Function等 语法:A instanceof B // A是否属于B类型的实例 返回值:true / false 例如: var a = [1,5,6,9,7]; a instanceof Function // false a instanceof Array // true a instanceof object // true 三、使
2021-06-09 17:11:20
148
原创 js中判断一个对象是否存在
一、Boolean()方法 用Boolean()方法可以将Js中的任意数据类型转为布尔值: 二、用于判断xx是否存在 js一般会自动执行Boolean()方法,我们可以借此判断某个对象在js当前的执行环境中知否存在。如: var x = 1; // x的数据类型为数值 if (x) { // js自动将x转换为布尔值,对应的是true 代码 // x为true时if语句执行代码 } 又如,可以判断当前环境下某个对象是否存在。 在为一个元素绑定了某个事件后,浏览器会在其对
2021-05-18 17:03:22
6596
原创 三元运算符
作用:用于判断某个关系表达式为true or false,然后执行对应结果的代码(相当于if else逻辑) 语法: 关系表达式? 表达式1:表达式2 // 关系表达式结果为true执行表达式1,false执行表达式2 例子: var a = 1; var b = 2; a>b? alert(a):alert(b); // 输出2 ...
2021-04-28 16:42:03
152
原创 通过DOM属性/方法修改css样式
一、修改内联样式 内联样式:html标签中style属性里设置的css样式,优先级高于css样式表里的样式。 语法:元素节点.style.样式名 = '样式值'; 注意:由于在js中 ’ - ’ 表示减法运算符,因此background-color等属性需要以驼峰命名法的方式书写。 二、修改css样式表中的样式 语法:元素节点.currentStyle.属性名 = '属性值'; 注意:此语法适用于目前正在显示的css样式,不管是内联样式还是样式表样式。 ...
2021-04-26 15:37:42
1020
原创 DOM增删改节点方法是否会修改原html代码的问题(汇总)
一、会对原代码产生修改的DOM增删改节点方法 1.node.属性名= "属性值" // 不会在原代码中插入新的属性代码 二、不会对原代码产生修改的DOM增删改节点方法 1.node.createElement() // 在实际代码中插入一个新元素的代码 2.node.setAttribute() // 会在原代码中插入新的属性代码 2.node.removeAttribute() // 会删除在原代码中已有的属性代码 ...
2021-04-26 09:04:35
158
原创 innerHTML和innerText属性的区别
一、innerHTML:获得一个元素内部的所有内容,包括标签、文本代码 <ul class="web-nav" id="gw"> <li><a href="#">公司官网</a></li> <li><a href="#">帮助中心 ∨</a></li> <li><a href="#">旗下产品 ∨</a></li>
2021-04-25 17:45:04
345
原创 document.querySelector() DOM方法详解
一、作用:可通过多种方法获取html元素 语法:参数为字符串,要带上css选择器标识符 document.querySelector('TagName') // 以标签名返回一个元素 document.querySelector('#id') // 以id名返回一个元素 document.querySelector('.className') // 以classs名返回一个元素 document.querySelector('.className div') // 最后这
2021-04-25 17:25:14
2698
原创 insertBefore() DOM方法应用
作用:在指定子节点前插入另一个子节点 语法:父节点.insertBefore('插入的子节点','指定原有子节点') 由于是在指定的原有子节点前插入新的子节点,因此这个方法的调用者必须是一个父节点,因为所谓“原有的子节点”必须是相对父节点来说。如: <ul class="web-nav" id='gw'> <!-- 父节点 --> <li><a href="#">公司官网</a></li> <!-- 子节点
2021-04-25 17:00:19
484
原创 构造函数
一、构造函数:专门用于创建对象的函数。 二、声明一个构造函数: function 构造函数名() { // 构造函数名的第一个字母要大写 属性名:属性值, 属性名:属性值, 方法名:方法(函数) } 三、调用构造函数:创建一个对象实例 new 构造函数名(); 四、构造函数的参数(一般不写):以数组对象为例 1.定义数组的值为a,b var arr = new Array('a', 'b'); console.log('数组的长度'+ arr.length); console.log('数组
2021-04-19 16:16:19
783
2
原创 javascript全局变量和局部变量详解
一、使用var 声明的是局部变量,在全局作用域中使用则与不用var一样会声明一个全局变量。 var a = 1; function fun (){ var a = 2; console.log(a); } fun(); console.log(a);
2021-04-18 18:47:08
1185
原创 回调函数是什么?附实际使用的例子
一、当a标签包含span标签时,为span设置css样式可正常生效 html代码: <li><a href="#">你好,请登录 <a href="#"><span>免费注册</span></a></a></li> css代码: .users-menu li span { color:#f10215; 二、当span标签包含a标签时,为a设置css样式无效 ...
2021-04-16 18:01:10
232
原创 Array对象的常用属性和方法
一、Array的常用属性: array.length 特点: 1.数组的长度是动态变化的,随着元素的删减而变动。 2.修改数组的length属性可以从数组的最后一个元素开始删去超出length长度的元素。 二、Array的常用方法(要注意各个方法是否改变原数组还是返回了一个新数组) 1.数组排序:Array.sort() 2.翻转数组:Array.reverse() 3.数组元素合并成字符串:Array.join(‘分隔符’) 4.合并两个数组:Array.concat() 5.取出数组的某一部分:Arr
2021-04-16 17:53:06
646
原创 对象和数组的联系和区别
一、对象字面量: { 属性名1:属性值, 属性名2:属性值, 属性名3:属性值, } 属性名(字符串) 属性值 name ‘ellen’ age 18 gender ‘female’ 二、数组字面量:数组本质上也是对象,在js中,万物皆对象 [元素1,元素2,元素3] 索引(数字) 值(任何数据类型) 0 66 1 35 2 ‘ellen’ 3 ‘苹果’ 4 [1,15,3,8,9,7] 三、访问对象属性和数组元素 1.访问对象的某个属性
2021-04-14 17:09:47
465
原创 块状元素与内联元素嵌套规则
(1).块元素可以包含内联元素或某些块元素,但内联元素却不能包含块元素,它只能包含其他的内联元素 例: <div><h1></h1><p></p></div> <a href="#"><span></span></a> (2).块级元素不能放在p元素里面 例: <p><ol><li></li></ol></p><
2021-04-14 16:39:58
191
原创 String对象的常用方法及例子
一、string.slice(索引号1,索引号2):切割字符串 切割的范围是从索引号1(包含)到索引号2(不包含): var str = 'dhasdasdads'; var newStr = str.slice(0,3); console.log(newStr); // 输出dha 二、string.split(seperator):将字符串拆分为字符串数组 1.参数seperator可以是空字符,表示每个字母形成一个数组元素 var str = 'dhasdasdads'; var arr =
2021-04-02 16:08:29
614
原创 互联网工作过程
在服务器端的浏览器上输入一串网址 ↓ 浏览器在DNS(域名系统服务器,里面存放着互联网中各个服务器的地址,像个电话簿)中找出网页存放的服务器的地址。需要注意,网页在DNS上是以其实际地址(IP地址)存放的,因此DNS还会将网址解析为IP地址然后再进行匹配。 ↓ 浏览器发送http请求要求一份网页的备份 ↓ 服务器同意客户端需求后,将网页文件以数据包的形式返回客户端浏览器 ...
2021-04-01 16:34:14
156
原创 全局作用域中的变量名能和函数作用域中的变量名一样吗?
1.使用关键字var声明的变量,只能在其当前的作用域下存在(访问): var a = 1; function() { var a = 2; } // 函数外面的那个a和函数里的a虽然变量名一样,但其实是两个变量,互相独立。函数内部的那个a只能在函数内部访问,如修改其值,对函数外的变量a没有影响。 2.不使用关键字var声明的变量,仅表示引用。此时函数内部的变量a和函数外部的变量a是同一个,二者为引用关系(即函数作用域访问全局作用域中的变量)。 var a = 1; function() { a =
2021-03-31 16:32:15
249
原创 i++和++i的区别
1.就自增本身而言,++i和i++是一样的,都是i=i+1,即i本身的值在原来的基础上加1。 2.但当i++或++i作为一个运算结果(返回值)来说时,也就是 a=i++ 或者 a=++i 这样的形式,情况就不一样了,a的值会不同。 a=i++:先把i的值赋予a,然后在执行i的自增( i=i+1); a=++i:先执行i的自增(i=i+1),然后把i自增后的值赋予a; 举个例子来说,如果一开始i=4。那么执行a=i++这条语句之后,a=4,i=5;那么执行a=++i这条语句之后,i=5,a=5;同理,i–和-
2021-03-31 14:51:43
723
原创 函数的返回值
1.函数返回值:将函数代码的执行结果返回给函数调用者,相当于把体检结果的数据给体检者本人,数据留待本人使用。如: function fun(a,b) { sum = a + b; return sum; } 如果函数没有返回值,那么调用函数后,代码执行完毕就结束了。调用一次产生一个结果,结果本身无法提供后续使用。 2.可将返回值赋值给一个变量,方便使用: var result = fun(1,2) //此时的result值为3。 3.函数的返回值可以是变量、对象、函数等类型的数据。 A.当返回值为
2021-03-24 17:54:00
7560
原创 函数之参数:形参和实参及其作用域的问题
function fun(a,b) { } 相当于在函数内部定义了a变量和b变量,但不赋值: function fun() { var a; var b; } 因此,可以理解:a和b变量是属于fun函数执行环境下的变量对象,而不属于全局环境。
2021-03-23 17:22:45
607
原创 table cellspacing属性;嵌套,边框重叠变粗的解决方法
table的cellspacing属性 使用cellspacing后边框重叠变粗的解决方法: 在外层table与内层table嵌套,内外表格都需边框时,设置“border=1”,但边框会重复,造成某些地方边框粗,有些地方边框细。 解决方法 1、外表格样式 <table border="1" cellspacing="0" cellpadding="0" style="border-collapse: collapse;”> 2、内表格样式 <table border="1" cellsp
2020-10-27 17:39:52
2052
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅