fix(guide): simplify directory structure

This commit is contained in:
Mrugesh Mohapatra
2018-10-16 21:26:13 +05:30
parent f989c28c52
commit da0df12ab7
35752 changed files with 0 additions and 317652 deletions

View File

@@ -0,0 +1,69 @@
---
title: Iterate Through the Keys of an Object with a for...in Statement
localeTitle:  Итерация через ключи объекта с помощью for for ... in Statement
---
## Итерация через ключи объекта с помощью for for ... in Statement
Метод:
* Примечание. `dot-notation` вызовет ошибки в этой проблеме.
* `[square-bracket]` notation должна использоваться для вызова имени свойства переменной.
* Следующий код не будет работать.
### Пример 1:
```javascript
for (let user in obj) {
if(obj.user.online === true) {
//code
}
}
```
* В примере 2 показано, как использовать нотацию с `[square-bracket]` код будет выполнен.
### Пример 2:
```javascript
for (let user in obj) {
if(obj[user]online === true) {
//code
}
}
```
### Решение:
```javascript
let users = {
Alan: {
age: 27,
online: false
},
Jeff: {
age: 32,
online: true
},
Sarah: {
age: 48,
online: false
},
Ryan: {
age: 19,
online: true
}
};
function countOnline(obj) {
// change code below this line
let result = 0;
for (let user in obj) {
if(obj[user].online === true) {
result++;
}
}
return result;
// change code above this line
}
console.log(countOnline(users));
```

View File

@@ -0,0 +1,14 @@
---
title: Access an Array's Contents Using Bracket Notation
localeTitle: Доступ к содержимому массива с использованием скобок
---
## Доступ к содержимому массива с использованием скобок
* Помните, что индекс массивов начинается с 0, поэтому положение b будет расположено в `myArray[1]` .
## Решение
```javascript
myArray[1] = "anything we want";
```

View File

@@ -0,0 +1,45 @@
---
title: Access Property Names with Bracket Notation
localeTitle: Доступ к именам объектов с обозначением скобок
---
## Доступ к именам объектов с обозначением скобок
Метод:
* Используя нотацию в виде скобок, просто напишите оператор return в функции `checkInventory()` .
* Следующий блок кода демонстрирует требуемый синтаксис.
## Пример:
```javascript
let juice = {
apple: 1.15,
orange: 1.45
};
function checkInventory(scannedItem) {
return juice[scannedItem];
}
```
## Решение:
```javascript
let foods = {
apples: 25,
oranges: 32,
plums: 28,
bananas: 13,
grapes: 35,
strawberries: 27
};
// do not change code above this line
function checkInventory(scannedItem) {
// change code below this line
return foods[scannedItem];
}
// change code below this line to test different cases:
console.log(checkInventory("apples"));
```

View File

@@ -0,0 +1,23 @@
---
title: Add Items to an Array with push() and unshift()
localeTitle: Добавление элементов в массив с помощью push () и unshift ()
---
## Добавление элементов в массив с помощью push () и unshift ()
* Как и в приведенном примере, используйте метод `.unshift()` в массиве, чтобы добавить элементы в начало массива и использовать метод `.push()` для добавления элементов в конец массива.
## Решение:
```javascript
function mixedNumbers(arr) {
// change code below this line
arr.unshift('I',2,'three');
arr.push(7,'VIII', 9);
// change code above this line
return arr;
}
// do not change code below this line
console.log(mixedNumbers(['IV', 5, 'six']));
```

View File

@@ -0,0 +1,35 @@
---
title: Add Items Using splice()
localeTitle: Добавление элементов с помощью splice ()
---
## Добавление элементов с помощью splice ()
* Использование функции сращивания (), вы должны удалить первые 2 элемента из массива `arr` и заменить их `DarkSalmon` и `BlanchedAlmond` .
* Помните, что функция сращивания может принимать до трех параметров.
## Пример:
```javascript
arr.splice(0, 1, "Two");
/* The first two paramemters are the same as they were in the previous challenge.
`0` will start the `splice()` function off at index 0.
The second parameter `1` will remove only 1 variable from the array.
The final variable "Two" will replace the variable in arr[0].
Note: The final parameter can take more than 1 arguement.
*/
```
## Решение:
```javascript
function htmlColorNames(arr) {
// change code below this line
arr.splice(0, 2, "DarkSalmon", "BlanchedAlmond");
// change code above this line
return arr;
}
// do not change code below this line
console.log(htmlColorNames(['DarkGoldenRod', 'WhiteSmoke', 'LavenderBlush', 'PaleTurqoise', 'FireBrick']));
```

View File

@@ -0,0 +1,30 @@
---
title: Add Key-Value Pairs to JavaScript Objects
localeTitle: Добавление пар ключей к объектам JavaScript
---
## Добавление пар ключей к объектам JavaScript
* Объект питания уже объявлен. Все, что осталось сделать, это добавить три новых `key-values` .
```javascript
OBJECT[{KEY}] = {VALUE}
```
* Вышеприведенный код создаст `key-value` ney внутри объекта.
## Решение
```javascript
let foods = {
apples: 25,
oranges: 32,
plums: 28
};
// change code below this line
foods['bananas'] = 13;
foods['grapes'] = 35;
foods['strawberries'] = 27;
// change code above this line
console.log(foods);
```

View File

@@ -0,0 +1,33 @@
---
title: Check For The Presence of an Element With indexOf()
localeTitle: Проверка наличия элемента с помощью indexOf ()
---
## Проверка наличия элемента с помощью indexOf ()
* Простой `if-statement` может использоваться для проверки того, является ли значение, возвращаемое `indexOf()` меньше 0.
* Как только значение будет обнаружено, вы можете вернуть `true` или `false` .
* `Solution-1` демонстрирует, как простой `if-statement` может вернуть правильный результат.
## Решение-1:
```javascript
function quickCheck(arr, elem) {
if(arr.indexOf(elem)>=0) {
return true;
}
return false;
}
console.log(quickCheck(['squash', 'onions', 'shallots'], 'mushrooms'));
```
* `Solution-2` демонстрирует, как проблему можно решить, используя `? : (conditional)` оператор.
## Решение-2:
```javascript
function quickCheck(arr, elem) {
return arr.indexOf(elem) >= 0 ? true : false;
}
console.log(quickCheck(['squash', 'onions', 'shallots'], 'mushrooms'));
```

View File

@@ -0,0 +1,55 @@
---
title: Check if an Object has a Property
localeTitle: Проверьте, имеет ли объект свойство
---
## Проверьте, имеет ли объект свойство
Метод:
* Самый простой способ завершить эту задачу - создать « `ìf-statement` для проверки, чтобы убедиться, что объект не содержит всех пользователей, а затем вернуть истинную или ложную инструкцию. Первое решение делает именно это.
* Второе решение работает точно так же, только в нем используется одна строка кода - `Conditional(ternary)-Operator` .
[developer.mozilla.org](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Conditional_Operator) предоставляет более глубокий анализ тернарного оператора.
### Решение-1:
```javascript
let users = {
Alan: {
age: 27,
online: true
},
Jeff: {
age: 32,
online: true
},
Sarah: {
age: 48,
online: true
},
Ryan: {
age: 19,
online: true
}
};
function isEveryoneHere(obj) {
// change code below this line
if(users.hasOwnProperty('Alan','Jeff','Sarah','Ryan')) {
return true;
}
return false;
// change code above this line
}
console.log(isEveryoneHere(users));
```
### Решение-2:
```javascript
function isEveryoneHere(obj) {
return (users.hasOwnProperty('Alan','Jeff','Sarah','Ryan')) ? true : false;
}
```

View File

@@ -0,0 +1,21 @@
---
title: Combine Arrays with the Spread Operator
localeTitle: Объединить массивы с оператором распространения
---
## Объединить массивы с оператором распространения
* Решение в точности соответствует приведенному примеру. Просто вставьте массив `fragment[]` массив `sentence[]` в нужном индексе.
## Решение:
```javascript
function spreadOut() {
let fragment = ['to', 'code'];
let sentence = ["learning", ...fragment, "is", "fun"]; // change this line
return sentence;
}
// do not change code below this line
console.log(spreadOut());
```

View File

@@ -0,0 +1,20 @@
---
title: Copy an Array with the Spread Operator
localeTitle: Скопируйте массив с помощью оператора распространения
---
## Скопируйте массив с помощью оператора распространения
* Последний намек в примере говорит вам использовать недавно выученный метод.
* Оператор распространения копирует все элементы в новый пустой объект.
\`\` \`Javascript while (num> = 1) { newArr = \[... arr\] num--; }
```
- The code above will copy all of the elements into `newArr` but will also reinitialise `newArr` with every new iteration of the while loop.
- A new variable should first be initialised using the spread operator - `let obj = [...arr];` - then this variable should be added to the `newArr` for every iteration of the while loop.
## Solution:
```
Javascript function copyMachine (arr, num) { пусть newArr = \[\]; while (num> = 1) { // изменить код ниже этой строки newArr.push (\[... обр\]); // изменить код над этой строкой num--; } return newArr; }
// измените код здесь, чтобы протестировать разные случаи: console.log (copyMachine (\[true, false, true\], 2)); \`\` \`

View File

@@ -0,0 +1,30 @@
---
title: Copy Array Items Using slice()
localeTitle: Копирование элементов массива Использование среза ()
---
## Копирование элементов массива Использование среза ()
* функция `slice()` должна использоваться для возврата массива, состоящего только из `warm` и `sunny` .
* Поэтому два параметра должны быть переданы функции `slice()` . Первым параметром должен быть индекс, на который вы хотите начать подстроку. Второй параметр должен быть индексом, по которому заканчивается подстрока.
* Примечание. Второй параметр завершит подстроку с точным индексом.
## Пример:
```javascript
return arr.slice(1,4);
/* This will return a substring consisting of indexs [1,2,3]
Note: arr[4] is NOT included.
```
## Решение:
```javascript
function forecast(arr) {
// change code below this line
return arr.slice(2,4);
}
// do not change code below this line
console.log(forecast(['cold', 'rainy', 'warm', 'sunny', 'cool', 'thunderstorms']));
```

View File

@@ -0,0 +1,28 @@
---
title: Create complex multi-dimensional arrays
localeTitle: Создание сложных многомерных массивов
---
## Создание сложных многомерных массивов
* Первая строка - `deep` - должна быть вставлена ​​на три уровня. Это означает, что в пределах ровных множеств `[square-brackets]` .
```javascript
let threeLevelArray = ["first level", ["Two levels deep", ["Three levels deep"]]];
```
* Используя эту логику вставки строки `deep` , `deeper` и самого `deepest` в матрице три уровней, четыре уровня глубокой и пять уровней глубоко соответственно.
## Решение:
```javascript
let myNestedArray = [
// change code below this line
['unshift', false, 1, 2, 3, 'complex', 'nested'],
['loop', 'shift', 6, 7, 1000, 'method'],
['concat', false, true, 'spread', 'array',["deep"]],
['mutate', 1327.98, 'splice', 'slice', 'push', [["deeper"]]],
['iterate', 1.3849, 7, '8.4876', 'arbitrary', 'depth', [[["deepest"]]] ]
// change code above this line
];
```

View File

@@ -0,0 +1,42 @@
---
title: Generate an Array of All Object Keys with Object.keys()
localeTitle: Генерировать массив всех ключей объекта с помощью Object.keys ()
---
## Генерировать массив всех ключей объекта с помощью Object.keys ()
### Метод:
* Чтобы вернуть массив пользователей, метод `Object.keys()` должен принять аргумент.
* Эта задача может быть решена с помощью оператора прямой строки.
### Решение:
```javascript
let users = {
Alan: {
age: 27,
online: false
},
Jeff: {
age: 32,
online: true
},
Sarah: {
age: 48,
online: false
},
Ryan: {
age: 19,
online: true
}
};
function getArrayOfUsers(obj) {
// change code below this line
return Object.keys(obj);
// change code above this line
}
console.log(getArrayOfUsers(users));
```

View File

@@ -0,0 +1,11 @@
---
title: Basic Data Structures
localeTitle: Основные структуры данных
---
## Основные структуры данных
Это заглушка. [Помогите нашему сообществу расширить его](https://github.com/freecodecamp/guides/tree/master/src/pages/mathematics/quadratic-equations/index.md) .
[Это руководство по быстрому стилю поможет вам принять ваш запрос на тягу](https://github.com/freecodecamp/guides/blob/master/README.md) .
#### Дополнительная информация:

View File

@@ -0,0 +1,54 @@
---
title: Iterate Through All an Array's Items Using For Loops
localeTitle: Итерация через все элементы массива с использованием циклов
---
## Итерация через все элементы массива с использованием циклов
## Подсказка 1
* Вложенный `for` петли должны быть использованы для поиска через каждый элемент массива.
```javascript
for (let i = 0; i < arr.length; i++) {
```
\`
## Подсказка 2
* Затем каждый элемент массива следует сравнить с параметром `elem` переданным через функцию `filteredArray()` .
```javascript
if (arr[i].indexOf(elem)==-1){
```
## Подсказка 3
* Если совпадение не найдено, то `newArr` добавляет весь субаран. Функция `push()` здесь очень полезна.
```javascript
newArr.push(arr[i]);
```
* После того, как весь подъярус будет добавлен в `newArr` цикл продолжит со следующего элемента.
## Решение:
```javascript
function filteredArray(arr, elem) {
let newArr = [];
// change code below this line
for (let i = 0; i < arr.length; i++) {
if (arr[i].indexOf(elem)==-1){ //Checks every parameter for the element and if is NOT there continues the code
newArr.push(arr[i]); //Inserts the element of the array in the new filtered array
};
};
// change code above this line
return newArr;
};
// change code here to test different cases:
console.log(filteredArray([[3, 2, 3], [1, 6, 3], [3, 13, 26], [19, 3, 9]], 3));
```

View File

@@ -0,0 +1,45 @@
---
title: Modify an Array Stored in an Object
localeTitle: Измените массив, хранящийся в объекте
---
## Измените массив, хранящийся в объекте
### Метод:
* Функция может быть записана только в двух строках кода.
* Первая строка должна просто использовать функцию `push()` чтобы добавить параметр `friend` в массив, найденный в `user.data.friend` . Вторая строка вернет измененный массив.
* Помните, что `user` должен ссылаться на первый параметр, присвоенный функции `addFriend()` .
### Решение:
```javascript
let user = {
name: 'Kenneth',
age: 28,
data: {
username: 'kennethCodesAllDay',
joinDate: 'March 26, 2016',
organization: 'freeCodeCamp',
friends: [
'Sam',
'Kira',
'Tomo'
],
location: {
city: 'San Francisco',
state: 'CA',
country: 'USA'
}
}
};
function addFriend(userObj, friend) {
// change code below this line
userObj.data.friends.push(friend);
return userObj.data.friends;
// change code above this line
}
console.log(addFriend(user, 'Pete'));
```

View File

@@ -0,0 +1,46 @@
---
title: Modify an Object Nested Within an Object
localeTitle: Изменение объекта, вложенного в объект
---
## Изменение объекта, вложенного в объект
Метод:
* Помните, что объект, который вы хотите изменить, имеет два уровня глубины, `dot-notation` проще использовать в этом случае.
* Просто определите объект, а затем используйте `dot-notation` для доступа ко второму объекту и, наконец, конечный элемент, который вы хотите изменить.
## Пример:
```javascript
let myObject = {
level_1: 'outside',
first_level_object: {
level_2: '2 levels deep',
second_level_object: {
level_3: '3 levels deep'
}
}
};
//The following line of code will modify the data found in level_2.
myObject.first_level_object.level_2 = 'level-2 has been reached';
```
## Решение:
```javascript
let userActivity = {
id: 23894201352,
date: 'January 1, 2017',
data: {
totalUsers: 51,
online: 42
}
};
// change code below this line
userActivity.data.online = 45;
// change code above this line
console.log(userActivity);
```

View File

@@ -0,0 +1,21 @@
---
title: Remove Items from an Array with pop() and shift()
localeTitle: Удалите элементы из массива с помощью pop () и shift ()
---
## Удалите элементы из массива с помощью pop () и shift ()
* Метод `.pop()` метод `.shift()` должны быть вызваны и инициализированы с помощью `popped` и `shifted` переменных, чтобы вернуть правильный ответ от функции.
## Решение:
```javascript
function popShift(arr) {
let popped = arr.pop();
let shifted = arr.shift();
return [shifted, popped];
}
// do not change code below this line
console.log(popShift(['challenge', 'is', 'not', 'complete']));
```

View File

@@ -0,0 +1,23 @@
---
title: Remove Items Using splice()
localeTitle: Удаление элементов с помощью splice ()
---
## Удаление элементов с помощью splice ()
* Функция `splice()` должна быть вызвана в массиве `arr` , чтобы удалить 1 или более элементов из центра массива.
* Массив `arr` настоящее время добавляет значение 16. Просто удалите столько переменных, сколько необходимо для возврата 10.
## Решение:
```javascript
function sumOfTen(arr) {
// change code below this line
arr.splice(1,2);
// change code above this line
return arr.reduce((a, b) => a + b);
}
// do not change code below this line
console.log(sumOfTen([2, 5, 1, 5, 2, 1]));
```

View File

@@ -0,0 +1,28 @@
---
title: Use an Array to Store a Collection of Data
localeTitle: Используйте массив для хранения коллекции данных
---
## Используйте массив для хранения коллекции данных
### Метод:
* В JS массивы являются одной из наиболее часто используемых структур данных. В отличие от других языков Массивы в JS могут хранить разные типы данных и также могут изменять их размер во время выполнения и, следовательно, также называются «Динамические массивы». Они также индексируются 0.
* Массивы могут быть инициализированы по-разному:
1. Литералы массива
2. Конструкторы массивов
* В этой задаче мы сосредоточимся на литературе Array. Для инициализации массива мы просто делаем `let arr = [];`
* Мы можем добавить значения к этому массиву, обратившись к его индексу, например: `javascript let arr = []; arr[0] = "hello"; console.log(arr); // ["hello"]`
* Мы также можем инициализировать значения в массиве, когда мы объявляем его, например: `javascript let arr = [1, 2, 3, "John"];`
* В этой задаче вам нужно создать массив с не менее чем 5 элементами и по крайней мере одной строкой, одним числом и одним логическим.
### Решение:
```js
let yourArray = ["a", 2, true, "c", null, {name: "john"}];
```
### Ресурсы
Дальнейшее чтение массивов в [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array) .

View File

@@ -0,0 +1,27 @@
---
title: Use the delete Keyword to Remove Object Properties
localeTitle: Использование ключа удаления для удаления свойств объекта
---
## Использование ключа удаления для удаления свойств объекта
[Developer.mozilla.org](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/delete) предоставляет исчерпывающее руководство по оператору удаления.
### Решение:
```javascript
let foods = {
apples: 25,
oranges: 32,
plums: 28,
bananas: 13,
grapes: 35,
strawberries: 27
};
// change code below this line
delete foods.oranges;
delete foods.plums;
delete foods.strawberries;
// change code above this line
console.log(foods);
```