goit js hw 03
1.0.0
goit-js-hw-03存储库task-номер_завдання.js使用<script type="module">在单独的范围中关闭任务代码,并避免标识符名称的冲突。为user对象依次编写一个脚本:
'happy' mood领域'skydiving'代替hobby价值false的premium价值ключ:значення的user内容:使用Object.keys()和for...of const user = {
name : "Mango" ,
age : 20 ,
hobby : "html" ,
premium : true ,
} ;编写countProps(obj)功能,该功能计算对象中属性的数量。该函数返回数字 - 属性数。
const countProps = function ( obj ) {
// твій код
} ;
/*
* Викличи функції для перевірки працездатності твоєї реалізації.
*/
console . log ( countProps ( { } ) ) ; // 0
console . log ( countProps ( { name : "Mango" , age : 2 } ) ) ; // 2
console . log ( countProps ( { mail : "[email protected]" , isOnline : true , score : 500 } ) ) ; // 3编写接受员工对象并返回最有生产力的名称(执行所有任务)的findBestEmployee(employees)功能。员工和完成的任务数量包含为"ім'я":"кількість задач"对象的属性。
const findBestEmployee = function ( employees ) {
// твій код
} ;
/*
* Викличи функції для перевірки працездатності твоєї реалізації.
*/
console . log (
findBestEmployee ( {
ann : 29 ,
david : 35 ,
helen : 1 ,
lorence : 99 ,
} )
) ; // lorence
console . log (
findBestEmployee ( {
poly : 12 ,
mango : 17 ,
ajax : 4 ,
} )
) ; // mango
console . log (
findBestEmployee ( {
lux : 147 ,
david : 21 ,
kiwi : 19 ,
chelsy : 38 ,
} )
) ; // lux编写countTotalSalary(employees)文件比例对象。该功能计算员工薪水的总金额并将其退还。传输到函数的对象的每个字段都具有"ім'я":"зарплата" 。
const countTotalSalary = function ( employees ) {
// твій код
} ;
/*
* Викличи функції для перевірки працездатності твоєї реалізації.
*/
console . log ( countTotalSalary ( { } ) ) ; // 0
console . log (
countTotalSalary ( {
mango : 100 ,
poly : 150 ,
alfred : 80 ,
} )
) ; // 330
console . log (
countTotalSalary ( {
kiwi : 200 ,
lux : 50 ,
chelsy : 150 ,
} )
) ; // 400编写接收一系列对象和属性名称的getAllPropValues(arr, prop)功能。从数组中的每个对象返回一个特定prop属性的值数组。
const products = [
{ name : "Радар" , price : 1300 , quantity : 4 } ,
{ name : "Сканер" , price : 2700 , quantity : 3 } ,
{ name : "Дроїд" , price : 400 , quantity : 7 } ,
{ name : "Захоплення" , price : 1200 , quantity : 2 } ,
] ;
const getAllPropValues = function ( arr , prop ) {
// твій код
} ;
/*
* Викличи функції для перевірки працездатності твоєї реалізації.
*/
console . log ( getAllPropValues ( products , "name" ) ) ; // ['Радар', 'Сканер', 'Дроїд', 'Захоплення']
console . log ( getAllPropValues ( products , "quantity" ) ) ; // [4, 3, 7, 2]
console . log ( getAllPropValues ( products , "category" ) ) ; // []编写接收对象阵列和产品名称( name属性值)的calculateTotalPrice(allProdcuts, productName)函数。退还产品的总成本(价格 *数量)。
调用功能检查您的实现。
const products = [
{ name : "Радар" , price : 1300 , quantity : 4 } ,
{ name : "Сканер" , price : 2700 , quantity : 3 } ,
{ name : "Дроїд" , price : 400 , quantity : 7 } ,
{ name : "Захоплення" , price : 1200 , quantity : 2 } ,
] ;
const calculateTotalPrice = function ( allProdcuts , productName ) {
// твій код
} ;
/*
* Викличи функції для перевірки працездатності твоєї реалізації.
*/
console . log ( calculateTotalPrice ( products , "Радар" ) ) ; // 5200
console . log ( calculateTotalPrice ( products , "Дроїд" ) ) ; // 2800编写管理互联网银行个人办公室的场景。有一个会计account ,必须实施与资产负债表和交易历史记录合作的方法。
/*
* Типів транзацкій всього два.
* Можна покласти або зняти гроші з рахунку.
*/
const Transaction = {
DEPOSIT : "deposit" ,
WITHDRAW : "withdraw" ,
} ;
/*
* Кожна транзакція - це об'єкт з властивостями: id, type і amount
*/
const account = {
// Поточний баланс рахунку
balance : 0 ,
// Історія транзакцій
transactions : [ ] ,
/*
* Метод створює і повертає об'єкт транзакції.
* Приймає суму і тип транзакції.
*/
createTransaction ( amount , type ) { } ,
/*
* Метод відповідає за додавання суми до балансу.
* Приймає суму танзакції.
* Викликає createTransaction для створення об'єкта транзакції
* після чого додає його в історію транзакцій
*/
deposit ( amount ) { } ,
/*
* Метод відповідає за зняття суми з балансу.
* Приймає суму танзакції.
* Викликає createTransaction для створення об'єкта транзакції
* після чого додає його в історію транзакцій.
*
* Якщо amount більше, ніж поточний баланс, виводь повідомлення
* про те, що зняття такої суми не можливо, недостатньо коштів.
*/
withdraw ( amount ) { } ,
/*
* Метод повертає поточний баланс
*/
getBalance ( ) { } ,
/*
* Метод шукає і повертає об'єкт транзакції по id
*/
getTransactionDetails ( id ) { } ,
/*
* Метод повертає кількість коштів
* певного типу транзакції з усієї історії транзакцій
*/
getTransactionTotal ( type ) { } ,
} ;