千克用字母表示(千克用字母表示为多少)
11062023-12-03
大家好,今天小编来为大家解答以下的问题,关于js下标表示法,key值不建议用下标这个很多人还不知道,现在让我们一起来看看吧!
本文目录
在JavaScript中,下标表示法是一种访问数组和对象属性的常见方式。下标表示法使用方括号[]来访问数组元素或对象属性,并使用索引或键值作为下标。
下标表示法的语法如下:
1.访问数组元素:
```
array[index]
```
这里的`array`是要访问的数组,`index`是要访问的元素的索引值。索引从0开始,表示数组中的第一个元素。
例如:
```javascript
letfruits=['apple','banana','orange'];
console.log(fruits[0]);//输出:'apple'
```
2.访问对象属性:
```
object[key]
```
这里的`object`是要访问的对象,`key`是要访问的属性的键值。
例如:
```javascript
letperson={name:'John',age:30};
console.log(person['name']);//输出:'John'
```
下标表示法可以用于读取和修改数组元素或对象属性的值。注意,如果使用无效的索引或键值,或者访问不存在的属性,将返回`undefined`。
除了下标表示法,JavaScript还提供了点表示法来访问对象属性,例如`object.property`。两种表示法在大多数情况下是等效的,但下标表示法更加灵活,可以使用变量或动态表达式作为下标。
vue遍历获取键名和键值并显示在页面的时候可以通过js的for循环工具,组合成一个新的数组显示在页面上,也可以通过v-for指令来循环,他的参数有两个,第一个是你需要循环的对象,另外一个是循环的下标的,同时需要给循环遍历的对象设置一个key值。
答:本文邀请kitman来回答,理论结合实际为你献上奉上后台必备技能-awk入门教程~
首先说明,awk的数值只有双精度浮点型。awk是一种非常强大文本处理工具,可以相当于一个数据库来使用。
$digit代表第几个字段,字段之间的间隔默认是空格或者\t,多个连续的间隔算一个间隔,$0代表这一行
awk命令的基本格式awk'awk程序语句'输入文件1输入文件2…
awk程序语句的基本格式pattern1{action1}pattern2{action2}…
pattern是筛选的条件,支持||、&&、!这些条件组合
注:pattern可为空,即每一行,pattern还支持正则表达式,/正则内容/{action}
eg:
awk'$6!=0{print$0}'file1
即这一行的第六个字段不等于0,则打印这一行
awk的内置变量NR记录当前已经读取的行数(不是输出的行数)
FNR作用域是当前文件的NR
NF记录当前行的字段数
trick:当多个输入文件时,NR==FNR即这一行在第一个文件中,NR>FNR即这一行不在第一个文件中。
awk的内置特殊patternBEGIN:匹配第一个输入文件第一行之前的位置
END:最后一个输入文件最后一行之后的位置
awk的actionaction里面可以定运算,支持+-×/%五种运算。变量直接只用,不需要声明;
action中如果有多条语句,那么可以用;隔开
awk中只有两种类型:数值、字符串。可以变量可以使用字符串的拼接,使用空格隔开。
eg:
test.awk:
1234
23182
ab171
awk'$3>15{count=count+1}END{printcount}'test.awk
2
awk'$3>15{count=count+1;var=count"haha";printvar}'test.awk
1haha
2haha
awk'$3>15{count=count+1;var=count"_haha";printvar}'test.awk
1_haha
2_haha
即计算第三个字段大于15的行数,最后打印出来
awk的数组与控制语句awk支持数组,和使用一般的变量一样,不需要声明,直接a[下标]=value就可以了。这个下标可以是字符。
awk还支持一般编程语言中常见的控制结构if、while、for,和c中的写法一样。
if(){}else{}
while(){}
for(;;){}
eg:
逆序打印行,这里使用了printf,它的用法和c中的printf差不多,可以用于格式化的输出,默认不输出换行。
awk'{line[NR]=$0}END{i=NR;while(i>0){printfline[i]"\n";i=i-1}}'test.awk
ab171
23182
1234
awk的选项awk-F指定输入文件字段的分隔符
eg:
test2.awk:
1:234
2:3182
a:b171
awk-F":"'{print$2}'test2.awk
234
3182
b171
把:换成\t之后:
awk-F":"'{print$2}'test2.awk
空行
空行
空行
注:分隔符是空格时,\t也是分隔符;但指定\t是分隔符时,空格不是分隔符
awk的内置函数split(“被切割的字符串”,数组名,”分隔符”)
toupper()替换成大写
tolower()替换成小写
gsub()全局替换
length()计算字符串的长度
eg:
awk'{printlength($3)}'test.awk
1
2
2
大例子业务场景
收藏排行榜
从收藏存量记录、和取消收藏存量记录中,提取出收藏排行榜
存量记录中,$1是用户uin,$6是漫画id
思路:
1、把收藏存量记录中的$1_$6作为一个key,放进一个map,值是收藏时间
2、再从取消收藏记录中,取$1_$6,对比时间,然后删除(相当于合并状态),然后输出结果
3、把数据结果用map记录,计数,输出结果
4、把数据结果用sort逆序按数字大小排,然后把次数cut掉
对应的脚本语句:
awk'NR==FNR{a[$1"_"$6]=$7}NR>FNR{key=$1"_"$6;if((keyina)&&(a[key]<$7)){deletea[key]}}END{for(iina){printi}}'allcollect03allcancel03|awk-F"_"'{b[$2]=b[$2]+1;}END{for(iinb){printi"\t"b[i]}}'|sort-r-n-k2|cut-f'1'
好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!