JS笔记

1.for…in 与 for…of

for…of是ES6新引入的特性,修复了ES5引入的for…in的不足
for in遍历的是数组的索引(即下标),而for of遍历的是数组元素值。

  • 遍历数组 可以用 for…in 和 for…of()

      let arr = [5,4,3,3,4]
      for (const key in arr) {
     	 console.log(key);    //打印出来的是0,1,2,3,4  即输出的是索引(下标)
      }
      for (const key of arr) {
          console.log(key);	 //打印出来的是5,4,3,3,4  即输出的是数组内的元素
      }
    
  • 遍历对象 只能用 for…in

     let obj = {
      	name:'张三',
       	age:'18',
       	sex:'男'
     }
     for (const key in obj) {
     	console.log(key);    //打印出来的是name,age,sex  即输出的是索引(键下标)
         console.log(obj[key]);  //打印出来每个值  张三、18、男
     }
    
  • 如果将对象的属性或属性的值变成一个数组,还是可以用for…in的

     let obj = {a: '5', b: '2', c: '3', d: '4'}
     for (let o of Object.keys(obj)) {
     	console.log(o) // a,b,c,d
     }
     或
     let obj = {a: '5', b: '2', c: '3', d: '4'}
     for (let o of Object.values(obj)) {
         console.log(o) // 5,2,3,4
     }
    

2.Object.keys(obj) 与 Object.values(obj)

将对象里的里的索引或值挑出来,变成一个数组

let obj = { 
	a: "5", 
	b: "6", 
	c: "3", 
	d: "4" 
};
Object.keys(obj)		//输出["a", "b", "c", "d"]
Object.values(obj)  		//输出["5", "6", "3", "4"]

3.for…of 循环一个字符串

let str = 'loveyou'
for (let i of str) {
   console.log(i); // l,o,v,e,y,o,y
}

4. forEach 与 map

  • forEach
    没有返回值,会对原来的值发生改变

     let arr = [5, 4, 3, 2, 4];
     arr.forEach((value, index,arr ) => {
          console.log(value);		//5,4,3,2,4打印值
          console.log(index);		//0,1,2,3,4打印下标(索引)
          console.log(arr);			//原来的数组
     });
    

     var arr= [1,2,2,4,1];  
     var res = arr.forEach(function (item,index,input) {  
            input[index] = item*10;  
     })  
     console.log(res);		//-->undefined;  
     console.log(arr);		//-->会对原来的数组产生改变	[10,20,20,20,40,10]
    
  • map
    有返回值,可以return 出来。原来的没改变,return出来的是新的数组

     let arr = [5, 4, 3, 2, 4];
     arr.map((value, index,arr ) => {
         console.log(value);		//5,4,3,2,4打印值
         console.log(index);		//0,1,2,3,4打印下标(索引)
         console.log(arr);			//原来的数组
     });
    

     var arr = [1, 2, 2, 4, 1];
     var res = arr.map(function(item, index, input) {
         return item*10;  
     });
     console.log(res); //-->	[10,20,20,20,40,10]  return出来的是新的数组
     console.log(arr); //-->	[1,2,2,4,1]  原来的没改变
    
"sgmediation.zip" 是一个包含 UCLA(加利福尼亚大学洛杉矶分校)开发的 sgmediation 插件的压缩包。该插件专为统计分析软件 Stata 设计,用于进行中介效应分析。在社会科学、心理学、市场营销等领域,中介效应分析是一种关键的统计方法,它帮助研究人员探究变量之间的因果关系,尤其是中间变量如何影响因变量与自变量之间的关系。Stata 是一款广泛使用的统计分析软件,具备众多命令和用户编写的程序来拓展其功能,sgmediation 插件便是其中之一。它能让用户在 Stata 中轻松开展中介效应分析,无需编写复杂代码。 下载并解压 "sgmediation.zip" 后,需将解压得到的 "sgmediation" 文件移至 Stata 的 ado 目录结构中。ado(ado 目录并非“adolescent data organization”缩写,而是 Stata 的自定义命令存放目录)目录是 Stata 存放自定义命令的地方,应将文件放置于 "ado\base\s" 子目录下。这样,Stata 启动时会自动加载该目录下的所有 ado 文件,使 "sgmediation" 命令在 Stata 命令行中可用。 使用 sgmediation 插件的步骤如下:1. 安装插件:将解压后的 "sgmediation" 文件放入 Stata 的 ado 目录。如果 Stata 安装路径是 C:\Program Files\Stata\ado\base,则需将文件复制到 C:\Program Files\Stata\ado\base\s。2. 启动 Stata:打开 Stata,确保软件已更新至最新版本,以便识别新添加的 ado 文件。3. 加载插件:启动 Stata 后,在命令行输入 ado update sgmediation,以确保插件已加载并更新至最新版本。4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值