diff --git "a/35\345\274\240\345\271\263/\344\275\234\344\270\232/2022-10-10\344\275\234\344\270\232.html" "b/35\345\274\240\345\271\263/\344\275\234\344\270\232/2022-10-10\344\275\234\344\270\232.html" new file mode 100644 index 0000000000000000000000000000000000000000..243d8910e1ac14707f94ba24051d7c181365a306 --- /dev/null +++ "b/35\345\274\240\345\271\263/\344\275\234\344\270\232/2022-10-10\344\275\234\344\270\232.html" @@ -0,0 +1,56 @@ + + + + + + + Document + + + + + + \ No newline at end of file diff --git "a/35\345\274\240\345\271\263/\344\275\234\344\270\232/2022-10-11\344\275\234\344\270\232.html" "b/35\345\274\240\345\271\263/\344\275\234\344\270\232/2022-10-11\344\275\234\344\270\232.html" new file mode 100644 index 0000000000000000000000000000000000000000..65c178204f17223c5015948b61f14370d434e57f --- /dev/null +++ "b/35\345\274\240\345\271\263/\344\275\234\344\270\232/2022-10-11\344\275\234\344\270\232.html" @@ -0,0 +1,35 @@ + + + + + + + Document + + + + + + \ No newline at end of file diff --git "a/35\345\274\240\345\271\263/\344\275\234\344\270\232/2022-10-12\344\275\234\344\270\232.html" "b/35\345\274\240\345\271\263/\344\275\234\344\270\232/2022-10-12\344\275\234\344\270\232.html" new file mode 100644 index 0000000000000000000000000000000000000000..ecc47c94a37eb3c517c10324f96351ada2f831a5 --- /dev/null +++ "b/35\345\274\240\345\271\263/\344\275\234\344\270\232/2022-10-12\344\275\234\344\270\232.html" @@ -0,0 +1,117 @@ + + + + + + + + Document + + + + + + + \ No newline at end of file diff --git "a/35\345\274\240\345\271\263/\347\254\224\350\256\260/2022-10-10\346\225\260\347\273\204.md" "b/35\345\274\240\345\271\263/\347\254\224\350\256\260/2022-10-10\346\225\260\347\273\204.md" new file mode 100644 index 0000000000000000000000000000000000000000..481cb04b1f72dc6c66875c37642e4379ad0c4e0b --- /dev/null +++ "b/35\345\274\240\345\271\263/\347\254\224\350\256\260/2022-10-10\346\225\260\347\273\204.md" @@ -0,0 +1,175 @@ +#### 一、split(): + +以特定字符分割字符串,返回的是一个数组 + +```sql +var A='**********' +var B = A.split('') 单引号内无符号的话一个元素都分割;是以单引号中的条件然后在字段中分割字段 +``` + +#### 二、substr() + +从下标start开始截取length个字符 + +```sql +var A='**********' +console.log(A.substr(start,length)) +``` + +#### 三、substring + + 从下标start开始,end结束,不包含end(下标) + +```sql +var A='**********' +substring(start,end): +console.log(A.substring(start,end)); 左闭右开:不包含右边 +``` + +#### 四、concat + +合并两个数组 + +```sql +const arrA = [1, 2, 3]; +const arrB = [4, 5, 6]; +const arrC =A.concat(B); +console.log(arrC); +``` + +#### 五、slice() + +表示切片,参数个数:0 1 2 返回一个数组对象 + +```sql +const arrA = [1, 2, 3, 4, 5]; +const arrB = arrA.slice(2,4); +console.log(arr1); +``` + +#### 六、splice() + + 接收 0 2 多 个参数 表示移除,替换元素 + +```sql +splice(start,end):左右都闭合,都能取到 +const arr2 = [1,2,3,4,5,6]; +arr2.splice(1,3) +arr2.splice(1,3,2,2,2); +(1,3):移除下标1-3的元素,(2,2,2):要替换的元素 +console.log(arr2); +``` + +#### 七、添加和删除 + +push:末尾添加 + +```sql +var arrA =[1,2,3,4,5,6,7,8,9] +arrA.push(7)末尾添加7 +console.log(arrA.push(7)) +会得到: +[1,2,3,4,5,6,7,8,9,7] +``` + +unshift:开头添加 + +```sql +var arrA =[1,2,3,4,5,6,7,8,9] +arrA.unshift(7)开头添加7 +console.log(arrA.unshift(7)) +会得到: +[7,1,2,3,4,5,6,7,8,9] +``` + +pop:末尾删除 + +```sql +var arrA =[1,2,3,4,5,6,7,8,9] +arrA.pop() +console.log(arrA.pop()) +会得到: +[1,2,3,4,5,6,7,8] +``` + +shift:开头删除 + +```sql +var arrA =[1,2,3,4,5,6,7,8,9] +arrA.shift() +console.log(arrA.shift()) +会得到: +[2,3,4,5,6,7,8,9] +``` + +#### 八、foreach + +为数组中每个元素调用对应函数, 遍历数组 + +```sql +const arrA = [1,2,3,4,5,6]; +arrA.forEach( + function (item,index,arr){ + item + 2 + console.log(item); + console.log('下标'+index); + } +) +console.log(arrA); +运行结果会遍历出数组中每个元素 +``` + +#### 九、map + +为数组中每个元素调用对应函数,返回一个新的数组 + +```sql +const arrA = [1,2,3,4,5,6]; +const arrB = arrA.map( + function(item){ + return item*2 + } +) +console.log(arrB); +会得到 +[2,4,6,8,10,12] +``` + +#### 十、filter + +筛选符合条件的元素,返回一个新数组 + +```sql +const arrA = [1,2,3,4,5,6]; +const arrB = arrA.filter( + + function (item) { + + if(item%2==0){ + + return item + + } + + } + + //es6 : => + +) +``` + +#### 十一、reduce + +归纳汇总 + +``` +const arrA = [1,2,3,4,5,6]; +const varr = arr2.reduce( + function (v1,v2){ + return v1*v2 + } +) +console.log(varr); + +``` + diff --git "a/35\345\274\240\345\271\263/\347\254\224\350\256\260/2022-10-11\345\207\275\346\225\260\345\243\260\346\230\216.md" "b/35\345\274\240\345\271\263/\347\254\224\350\256\260/2022-10-11\345\207\275\346\225\260\345\243\260\346\230\216.md" new file mode 100644 index 0000000000000000000000000000000000000000..072efb680e1ad470af3799ece30608d03a1ce492 --- /dev/null +++ "b/35\345\274\240\345\271\263/\347\254\224\350\256\260/2022-10-11\345\207\275\346\225\260\345\243\260\346\230\216.md" @@ -0,0 +1,147 @@ +### 一.函数声明 + +##### function 关键字 + +```javascript +//有参数,无返回值 +function Output(name,age) { + +​ console.log('hello'+name+age); + +​ } +``` + +```javascript +//两数相加 +//有参数,有返回值 + +​ function GetSum(n1,n2) { + +​ return n1+n2 + +​ } + +​ console.log(GetSum(5,6)); + +​ var result = GetSum(5,6) + +​ console.log(result); +``` + +```javascript +//有参数,返回多个值 + +​ function GetName(name) { + +​ let name_arr = name.split('') + +​ return name_arr + +​ } + + + +​ let [x,m,n] = GetName('叶小杰') //[叶, 小, 杰] + +​ console.log('姓:'+x + ' 名:'+m+n); +``` + +```javascript +//带不确定个参数 + +​ function GetSum1() { + +​ let sum = 0 + +​ //遍历数组 for(var e of 数组 ) + +​ for(var e of arguments){ + +​ sum += e + +​ } + +​ return sum + +​ } + + + +​ console.log(GetSum1(1,2,3,4,5,6,7,8)); +``` + +##### ...args:代表传入的是不确定个数的值 + +```javascript +//带不确定个参数 ...args:代表传入的是不确定个数的值 + +​ function GetSum2(...args) { + +​ let sum = 0 + +​ //遍历数组 for(var e of 数组 ) + +​ for(var e of args){ + +​ sum += e + +​ } + +​ return sum + +​ } + + + +​ console.log('方法2 '+GetSum2(1,2,5,8,9,7)); +``` + +### 二.箭头函数 + +结构: const FunctionName = (接收的参数) => (方法体) + +##### 1.如果不带参数,接收参数需要写一个小括号(不能省略) + +```javascript +const arrowFunc = () => {console.log('这是一个匿名函数');} +``` + +##### 2.方法体:如果方法体有多条语句 + +```javascript +const arrowFunc1 = (n1,n2) => { + +​ let result = n1 + n2; + +​ return result + +​ } +``` + +##### 2.1如果方法体中只有一个返回语句,可以不用大括号 + +```javascript + const arrowFunc2 = (n1,n2) => n1+n2 +``` + +### 3.默认值 + + + +```javascript + function OutPut(name='小杰') { + +​ console.log('welcome'+name); + +​ } + + +​ //不带参调用,输出默认值 + +​ OutPut() + +​ //带参调用,会覆盖默认值 + +​ OutPut('周飘',16) +``` + diff --git "a/35\345\274\240\345\271\263/\347\254\224\350\256\260/2022-10-12\345\257\271\350\261\241.md" "b/35\345\274\240\345\271\263/\347\254\224\350\256\260/2022-10-12\345\257\271\350\261\241.md" new file mode 100644 index 0000000000000000000000000000000000000000..5ad16b699e13175990e745753761e3ee91265fb8 --- /dev/null +++ "b/35\345\274\240\345\271\263/\347\254\224\350\256\260/2022-10-12\345\257\271\350\261\241.md" @@ -0,0 +1,100 @@ +### 1.全局变量 + +使用var(关键字)+变量名(标识符)的方式在function外部声明,即为全局变量,否则在function声明的是局部变量。该方式即为显式声明详细如下: + + + +### 2.对象 + +对象也是一个变量,但对象可以包含多个值(多个变量),每个值以 **name:value** 对呈现。 + +```javascript +var zj = { + + //属性明 :属性值 + name : '张静', + gender: 'female', + age: 16, + 'qq number' : '7954124', + isGraduated: false, //是否毕业 + bf: '蜗牛', + ex: '', + title: 'student', + //方法名 :构造函数 + graduating : function(){ + //programmer + this.title = 'Programmer' , + this.isGraduated = true + }, + breakingup : function(){ + this.ex = this.bf, + this.bf = '' + }, + + makenewboy:function(name){ + //先判断目前有没有男朋友 + if(this.bf.length === 0){ + this.bf = name + } + } + } +``` + +### 2.1访问对象属性 + +##### 对象名.属性明 即可访问对象属性 + +```javascript +// 通过 . 查询 或者 中括号的形式 +//zj.name; +//zj["name"]; +console.log(zj.age); +console.log(zj['qq number']); + //删除属性 +delete zj['qq number'] +``` + + + + + + + +### 3. 构造函数创建对象 + + + +```javascript + function Person(name,age){ +//this: 指代当前的对象 +//var this = {} +this.name = name, +this.age = age +//return 123 //返回的值是基本数据类型 会自动忽略 +//return {} //如果返回的是对象,那么覆盖返回的this +//return this +} +//实例化 +var zj1 = new Person('张静',26) +var zp = new Person('周飘',26) +zp.gender = '女' +``` +