JavaScript 属性非枚举的命名规范
JavaScript 是一种动态类型的编程语言,其属性非枚举的命名规范如下:
// 小驼峰式命名法 (minuscule camelCase)
myVariable = 'Hello, World!';
// 大驼峰式命名法 (capitalized camelCase)
MyClass.myMethod();
var
、let
或 const
:在 JavaScript 中,不需要使用 var
、let
或 const
来声明变量。使用 =
符号直接赋值即可。
// 不使用 var
myVar = 10;
this
:在 JavaScript 中,this
关键字引用当前执行上下文的对象。在函数中,this
通常指向调用该函数的对象。
function example() {
console.log(this.myProperty); // 输出调用该函数的对象的 myProperty 值
}
class
和原型链:在 ES6 引入的类定义中使用 class
关键字,并通过原型链实现继承。
// 定义一个 Animal 类
class Animal {
constructor(name) {
this.name = name;
}
}
// 定义一个 Dog 类,继承自 Animal
class Dog extends Animal {
constructor(name, breed) {
super(name); // 调用父类的构造函数
this.breed = breed;
}
}
// 模块定义
module.exports = {
myFunction: function() {
console.log('Hello from myFunction');
}
};
// 发起异步请求
function fetchData(url) {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve('Data received');
}, 2000);
});
}
// 调用异步函数并处理结果
fetchData('https://api.example.com/data')
.then(data => {
console.log(data);
})
.catch(error => {
console.error(error);
});
Object.setPrototypeOf
和 Object.create
:创建自定义类型的实例,使用 Object.setPrototypeOf
和 Object.create
取代直接使用 new
关键字。
// 创建一个 Animal 类型的子类
class Dog extends Animal {
constructor(name, breed) {
super(name); // 调用父类的构造函数
this.breed = breed;
}
}
// 使用 Object.setPrototypeOf 创建一个 Dog 类型的实例
const dog = Object.setPrototypeOf(new Dog('Buddy', 'Labrador'));
Set
和 Map
:代替数组,使用 Set
和 Map
类型进行更高效、更简洁的迭代操作。
// 使用 Set
const set = new Set();
set.add(1);
set.add(2);
console.log(set.size); // 输出 2
// 使用 Map
const map = new Map();
map.set('key1', 'value1');
map.set('key2', 'value2');
console.log(map.get('key1')); // 输出 'value1'
// 定义一个计数器函数
const count = (n) => {
let count = 0;
while (count < n) {
count++;
}
return count;
};
1
领取专属 10元无门槛券
手把手带您无忧上云