混合使用大小写字母。命名潜规则中的驼峰命名法是电脑程式编写时的一套命名规则,是指多个单词组合在一起标识一个特定的含义时,第一个单词全部小写,第二个以及之后的单词首字母大写其余小写,其中混合使用大小写字母满足条件。
听说过的命名法有下边三个:
匈牙利命名法。该命名法是在每个变量名的前面加上若干表示数据类型的字符。基本原则是:变量名=属性+类型+对象描述。如i表示int,所有i开头的变量命都表示int类型。s表示String,所有变量命以s开头的都表示String类型变量。
骆驼命名法。正如它的名称所表示的那样,是指混合使用大小写字母来构成变量和函数的名字。驼峰命名法跟帕斯卡命名法相似,只是首字母为小写,如userName。因为看上去像驼峰,因此而得名。
帕斯卡命名法 即pascal命名法。做法是首字母大写,如UserName,常用在类的变量命名中。
在vue官网中有这样的说明:HTML 中的特性名是大小写不敏感的,所以浏览器会把所有大写字符解释为小写字符。这意味着当你使用 DOM 中的模板时,camelCase (驼峰命名法) 的 prop 名需要使用其等价的 kebab-case (短横线分隔命名) 命名。
但是,如果使用的是字符串模板的话,就不存在这个限制了。
在Vue的源码中创建Vue组件的时候createComponent(),解析组件的相关属性
而,在extractPropsFromVNodeData()中,Vue通过调用内部方法hyphenate,把驼峰形式的属性转换为横断线形式
除此之外,Vue在initProps(),validateProp()时,都将驼峰形式的属性转换为横断线形式
变量的命名规则遵循 Camel 命名法,并尽量使用能描述变量作用的英文单词。例如存放学生姓名的变量可以定义成 name 或者 studentName 等。另外,变量名字也不建议过长, 最好是 1 个单词,最多不超过 3 个单词。
为了与变量有所区分,通常将定义常量的单词的所有字母大写。例如定义求圆面积的 n 的值,可以将其定义成一个常量以保证在整个程序中使用的值是统一的,直接定义成 PI 即可。
类的命名规则遵循 Pascal 命名法,即每个单词的首字母大写。例如定义一个存放学生信息的类,可以定义成 Student。
接口的命名规则也遵循 Pascal 命名法,但通常都是以 I 开头,并将其后面的每个单词的首字母大写。例如定义一个存放值比较操作的接口,可以将其命名为 ICompare。
方法的命名遵循 Pascal 命名法,一般采用动词来命名。例如实现添加用户信息操作的方法,可以将其命名为 AddUser。
URL命名通常有三种,驼峰命名法(serverAddress),蛇形命名法(server_address),脊柱命名法(server-address)。由于URL是大小写敏感的,如果用驼峰命名在输入的时候就要求区分大小写,一个是增加输入难度,另外也容易输错,报404。蛇形命名法用下划线,在输入的时候需要切换shfit,同时下划线容易被文本编辑器的下划线掩盖,支付宝用的是蛇形命名法, stackoverflowcom 和 githubcom 用的是脊柱命名法(例如 >
手敲的,给个辛苦分吧。。。
package test;
import javautilArrayList;
import javautilList;
public class Test {
public static void main(String[] args) {
//testing for data base column-key to java field
String[] dbKeys = {"id", "user_age", "user_addr_"};
Test t = new Test();
tconvertToJava(dbKeys);
Systemoutprintln("-----------------------------------");
//testing for Java field to data base column-key
String javaFieldNames[] = {"id","userAge","userHomeAddr"};
tgetDBKey(javaFieldNames);
}
/
Java field to data base column-key
/
private void getDBKey(String javaFieldNames){
if(javaFieldNames != null && javaFieldNameslength > 0){
for(String name : javaFieldNames){
StringBuffer buffer = new StringBuffer();
char[] array = nametoCharArray();
List<Integer> insertIndexes = new ArrayList<>();
for(int i=0;i<arraylength;i++){
Character c = array[i];
if(i != 0 && CharacterisUpperCase(c)){
insertIndexesadd(i);
}
}
if(insertIndexessize() > 0){
int flag = 0;
for(int j=0;j<insertIndexessize();j++){
String word = toLowercase4FirstLetter(namesubstring(flag, insertIndexesget(j)));
bufferappend(word)append("_");
flag = insertIndexesget(j);
}
String last = toLowercase4FirstLetter(namesubstring(flag));
bufferappend(last);
Systemoutprintln(buffertoString());
} else {
Systemoutprintln(name);
}
}
}
}
private String toLowercase4FirstLetter(String word){
if(word != null && wordlength() > 0){
String firstLetter = wordsubstring(0,1);
String others = wordsubstring(1);
return firstLettertoLowerCase() + others;
}else{
return "";
}
}
/
data base column-key to java field
/
public void convertToJava(String dbKeys) {
if(dbKeys != null && dbKeyslength > 0){
for(String key : dbKeys){
String[] words = keysplit("_");
String result = toUppercase4FirstLetter(words);
Systemoutprintln(result);
}
}
}
private String toUppercase4FirstLetter(String words){
StringBuffer buffer = new StringBuffer();
if(words != null && wordslength > 0){
for(int i=0;i<wordslength;i++){
String word = words[i];
String firstLetter = wordsubstring(0, 1);
String others = wordsubstring(1);
String upperLetter = null;
if(i != 0){
upperLetter = firstLettertoUpperCase();
} else {
upperLetter = firstLetter;
}
bufferappend(upperLetter)append(others);
}
return buffertoString();
}
return "";
}
}
以上就是关于哪个满足命名潜规则中的驼峰命名法全部的内容,包括:哪个满足命名潜规则中的驼峰命名法、有个以人名命名的变量命名规范叫什么来着、vue之props和自定义事件的驼峰命名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!