fix: converted single to triple backticks3 (#36230)

This commit is contained in:
Randell Dawson
2019-06-20 14:05:02 -07:00
committed by Tom
parent ac2192ce7a
commit 0011f254c1
75 changed files with 991 additions and 888 deletions

View File

@ -38,7 +38,8 @@ for (let user in obj) {
### حل: ### حل:
`let users = { ```javascript
let users = {
Alan: { Alan: {
age: 27, age: 27,
online: false online: false
@ -68,4 +69,4 @@ for (let user in obj) {
// change code above this line // change code above this line
} }
console.log(countOnline(users)); console.log(countOnline(users));
` ```

View File

@ -8,5 +8,6 @@ localeTitle: الوصول إلى محتويات صفيف باستخدام تدر
## حل ## حل
`myArray[1] = "anything we want"; ```javascript
` myArray[1] = "anything we want";
```

View File

@ -11,18 +11,20 @@ localeTitle: الوصول إلى خاصية الأسماء مع تدرج قوس
## مثال: ## مثال:
`let juice = { ```javascript
let juice = {
apple: 1.15, apple: 1.15,
orange: 1.45 orange: 1.45
}; };
function checkInventory(scannedItem) { function checkInventory(scannedItem) {
return juice[scannedItem]; return juice[scannedItem];
} }
` ```
## حل: ## حل:
`let foods = { ```javascript
let foods = {
apples: 25, apples: 25,
oranges: 32, oranges: 32,
plums: 28, plums: 28,
@ -39,4 +41,4 @@ localeTitle: الوصول إلى خاصية الأسماء مع تدرج قوس
// change code below this line to test different cases: // change code below this line to test different cases:
console.log(checkInventory("apples")); console.log(checkInventory("apples"));
` ```

View File

@ -8,7 +8,8 @@ localeTitle: إضافة عناصر إلى مصفوفة بدفع () و unshift ()
## حل: ## حل:
`function mixedNumbers(arr) { ```javascript
function mixedNumbers(arr) {
// change code below this line // change code below this line
arr.unshift('I',2,'three'); arr.unshift('I',2,'three');
arr.push(7,'VIII', 9); arr.push(7,'VIII', 9);
@ -18,4 +19,4 @@ localeTitle: إضافة عناصر إلى مصفوفة بدفع () و unshift ()
// do not change code below this line // do not change code below this line
console.log(mixedNumbers(['IV', 5, 'six'])); console.log(mixedNumbers(['IV', 5, 'six']));
` ```

View File

@ -20,7 +20,8 @@ localeTitle: إضافة عناصر باستخدام لصق ()
## حل: ## حل:
`function htmlColorNames(arr) { ```javascript
function htmlColorNames(arr) {
// change code below this line // change code below this line
arr.splice(0, 2, "DarkSalmon", "BlanchedAlmond"); arr.splice(0, 2, "DarkSalmon", "BlanchedAlmond");
// change code above this line // change code above this line
@ -29,4 +30,4 @@ localeTitle: إضافة عناصر باستخدام لصق ()
// do not change code below this line // do not change code below this line
console.log(htmlColorNames(['DarkGoldenRod', 'WhiteSmoke', 'LavenderBlush', 'PaleTurqoise', 'FireBrick'])); console.log(htmlColorNames(['DarkGoldenRod', 'WhiteSmoke', 'LavenderBlush', 'PaleTurqoise', 'FireBrick']));
` ```

View File

@ -6,14 +6,16 @@ localeTitle: إضافة أزواج Key-Value إلى كائنات JavaScript
* وقد أعلن بالفعل كائن الأطعمة. كل ما تبقى القيام به هو إضافة ثلاث `key-values` جديدة. * وقد أعلن بالفعل كائن الأطعمة. كل ما تبقى القيام به هو إضافة ثلاث `key-values` جديدة.
`OBJECT[{KEY}] = {VALUE} ```javascript
` OBJECT[{KEY}] = {VALUE}
```
* سيعمل الرمز أعلاه على إنشاء `key-value` ney داخل الكائن. * سيعمل الرمز أعلاه على إنشاء `key-value` ney داخل الكائن.
## حل ## حل
`let foods = { ```javascript
let foods = {
apples: 25, apples: 25,
oranges: 32, oranges: 32,
plums: 28 plums: 28
@ -24,4 +26,4 @@ localeTitle: إضافة أزواج Key-Value إلى كائنات JavaScript
foods['strawberries'] = 27; foods['strawberries'] = 27;
// change code above this line // change code above this line
console.log(foods); console.log(foods);
` ```

View File

@ -10,21 +10,23 @@ localeTitle: التحقق من وجود عنصر مع indexOf ()
## حل 1: ## حل 1:
`function quickCheck(arr, elem) { ```javascript
function quickCheck(arr, elem) {
if(arr.indexOf(elem)>=0) { if(arr.indexOf(elem)>=0) {
return true; return true;
} }
return false; return false;
} }
console.log(quickCheck(['squash', 'onions', 'shallots'], 'mushrooms')); console.log(quickCheck(['squash', 'onions', 'shallots'], 'mushrooms'));
` ```
* يوضح `Solution-2` كيف يمكن حل المشكلة باستخدام `? : (conditional)` المشغل. * يوضح `Solution-2` كيف يمكن حل المشكلة باستخدام `? : (conditional)` المشغل.
## حل 2: ## حل 2:
`function quickCheck(arr, elem) { ```javascript
function quickCheck(arr, elem) {
return arr.indexOf(elem) >= 0 ? true : false; return arr.indexOf(elem) >= 0 ? true : false;
} }
console.log(quickCheck(['squash', 'onions', 'shallots'], 'mushrooms')); console.log(quickCheck(['squash', 'onions', 'shallots'], 'mushrooms'));
` ```

View File

@ -13,7 +13,8 @@ localeTitle: تحقق مما إذا كان الكائن يحتوي على خاص
### حل 1: ### حل 1:
`let users = { ```javascript
let users = {
Alan: { Alan: {
age: 27, age: 27,
online: true online: true
@ -42,11 +43,12 @@ localeTitle: تحقق مما إذا كان الكائن يحتوي على خاص
} }
console.log(isEveryoneHere(users)); console.log(isEveryoneHere(users));
` ```
### حل 2: ### حل 2:
`function isEveryoneHere(obj) { ```javascript
function isEveryoneHere(obj) {
return (users.hasOwnProperty('Alan','Jeff','Sarah','Ryan')) ? true : false; return (users.hasOwnProperty('Alan','Jeff','Sarah','Ryan')) ? true : false;
} }
` ```

View File

@ -8,7 +8,8 @@ localeTitle: الجمع بين المصفوفات مع المشغل انتشار
## حل: ## حل:
`function spreadOut() { ```javascript
function spreadOut() {
let fragment = ['to', 'code']; let fragment = ['to', 'code'];
let sentence = ["learning", ...fragment, "is", "fun"]; // change this line let sentence = ["learning", ...fragment, "is", "fun"]; // change this line
return sentence; return sentence;
@ -16,4 +17,4 @@ localeTitle: الجمع بين المصفوفات مع المشغل انتشار
// do not change code below this line // do not change code below this line
console.log(spreadOut()); console.log(spreadOut());
` ```

View File

@ -17,11 +17,12 @@ localeTitle: نسخ صفيف العناصر باستخدام شريحة ()
## حل: ## حل:
`function forecast(arr) { ```javascript
function forecast(arr) {
// change code below this line // change code below this line
return arr.slice(2,4); return arr.slice(2,4);
} }
// do not change code below this line // do not change code below this line
console.log(forecast(['cold', 'rainy', 'warm', 'sunny', 'cool', 'thunderstorms'])); console.log(forecast(['cold', 'rainy', 'warm', 'sunny', 'cool', 'thunderstorms']));
` ```

View File

@ -6,14 +6,16 @@ localeTitle: إنشاء صفائف معقدة متعددة الأبعاد
* يجب أن تدرج السلسلة الأولى - `deep` - ثلاثة مستويات عميقة. هذا يعني ضمن ثلاث مجموعات بالضبط من `[square-brackets]` . * يجب أن تدرج السلسلة الأولى - `deep` - ثلاثة مستويات عميقة. هذا يعني ضمن ثلاث مجموعات بالضبط من `[square-brackets]` .
`let threeLevelArray = ["first level", ["Two levels deep", ["Three levels deep"]]]; ```javascript
` let threeLevelArray = ["first level", ["Two levels deep", ["Three levels deep"]]];
```
* باستخدام هذه السلاسل إدراج المنطق `deep` ، `deeper` `deepest` في المصفوفة ثلاث مستويات عميقة ، أربعة مستويات عميقة وخمس مستويات العميق على التوالي. * باستخدام هذه السلاسل إدراج المنطق `deep` ، `deeper` `deepest` في المصفوفة ثلاث مستويات عميقة ، أربعة مستويات عميقة وخمس مستويات العميق على التوالي.
## حل: ## حل:
`let myNestedArray = [ ```javascript
let myNestedArray = [
// change code below this line // change code below this line
['unshift', false, 1, 2, 3, 'complex', 'nested'], ['unshift', false, 1, 2, 3, 'complex', 'nested'],
['loop', 'shift', 6, 7, 1000, 'method'], ['loop', 'shift', 6, 7, 1000, 'method'],
@ -22,4 +24,4 @@ localeTitle: إنشاء صفائف معقدة متعددة الأبعاد
['iterate', 1.3849, 7, '8.4876', 'arbitrary', 'depth', [[["deepest"]]] ] ['iterate', 1.3849, 7, '8.4876', 'arbitrary', 'depth', [[["deepest"]]] ]
// change code above this line // change code above this line
]; ];
` ```

View File

@ -11,7 +11,8 @@ localeTitle: إنشاء صفيف من كافة مفاتيح الكائنات م
### حل: ### حل:
`let users = { ```javascript
let users = {
Alan: { Alan: {
age: 27, age: 27,
online: false online: false
@ -37,4 +38,4 @@ localeTitle: إنشاء صفيف من كافة مفاتيح الكائنات م
} }
console.log(getArrayOfUsers(users)); console.log(getArrayOfUsers(users));
` ```

View File

@ -17,15 +17,17 @@ localeTitle: يتكرر من خلال جميع عناصر المصفوفة عن
* يجب بعد ذلك مقارنة كل عنصر من الصفيف بمعلمة `elem` تم تمريرها من خلال الدالة `filteredArray()` . * يجب بعد ذلك مقارنة كل عنصر من الصفيف بمعلمة `elem` تم تمريرها من خلال الدالة `filteredArray()` .
`if (arr[i].indexOf(elem)==-1){ ```javascript
` if (arr[i].indexOf(elem)==-1){
```
## تلميح 3 ## تلميح 3
* إذا لم يتم العثور على تطابق ، فهذا `newArr` أن `newArr` تمت إضافته بالكامل. وظيفة `push()` مفيدة جدًا هنا. * إذا لم يتم العثور على تطابق ، فهذا `newArr` أن `newArr` تمت إضافته بالكامل. وظيفة `push()` مفيدة جدًا هنا.
`newArr.push(arr[i]); ```javascript
` newArr.push(arr[i]);
```
* وبمجرد إضافة هذا `newArr` بأكمله إلى `newArr` ، تستمر الحلقة مع العنصر التالي. * وبمجرد إضافة هذا `newArr` بأكمله إلى `newArr` ، تستمر الحلقة مع العنصر التالي.

View File

@ -11,7 +11,8 @@ localeTitle: تعديل كائن متداخل داخل كائن
## مثال: ## مثال:
`let myObject = { ```javascript
let myObject = {
level_1: 'outside', level_1: 'outside',
first_level_object: { first_level_object: {
level_2: '2 levels deep', level_2: '2 levels deep',
@ -22,11 +23,12 @@ localeTitle: تعديل كائن متداخل داخل كائن
}; };
//The following line of code will modify the data found in level_2. //The following line of code will modify the data found in level_2.
myObject.first_level_object.level_2 = 'level-2 has been reached'; myObject.first_level_object.level_2 = 'level-2 has been reached';
` ```
## حل: ## حل:
`let userActivity = { ```javascript
let userActivity = {
id: 23894201352, id: 23894201352,
date: 'January 1, 2017', date: 'January 1, 2017',
data: { data: {
@ -40,4 +42,4 @@ localeTitle: تعديل كائن متداخل داخل كائن
// change code above this line // change code above this line
console.log(userActivity); console.log(userActivity);
` ```

View File

@ -8,7 +8,8 @@ localeTitle: إزالة العناصر من صفيف مع pop () و shift ()
## حل: ## حل:
`function popShift(arr) { ```javascript
function popShift(arr) {
let popped = arr.pop(); let popped = arr.pop();
let shifted = arr.shift(); let shifted = arr.shift();
return [shifted, popped]; return [shifted, popped];
@ -16,4 +17,4 @@ localeTitle: إزالة العناصر من صفيف مع pop () و shift ()
// do not change code below this line // do not change code below this line
console.log(popShift(['challenge', 'is', 'not', 'complete'])); console.log(popShift(['challenge', 'is', 'not', 'complete']));
` ```

View File

@ -9,7 +9,8 @@ localeTitle: إزالة العناصر باستخدام لصق ()
## حل: ## حل:
`function sumOfTen(arr) { ```javascript
function sumOfTen(arr) {
// change code below this line // change code below this line
arr.splice(1,2); arr.splice(1,2);
// change code above this line // change code above this line
@ -18,4 +19,4 @@ localeTitle: إزالة العناصر باستخدام لصق ()
// do not change code below this line // do not change code below this line
console.log(sumOfTen([2, 5, 1, 5, 2, 1])); console.log(sumOfTen([2, 5, 1, 5, 2, 1]));
` ```

View File

@ -8,7 +8,8 @@ localeTitle: استخدم Delete keyword to Remove Object Properties
### حل: ### حل:
`let foods = { ```javascript
let foods = {
apples: 25, apples: 25,
oranges: 32, oranges: 32,
plums: 28, plums: 28,
@ -22,4 +23,4 @@ localeTitle: استخدم Delete keyword to Remove Object Properties
delete foods.strawberries; delete foods.strawberries;
// change code above this line // change code above this line
console.log(foods); console.log(foods);
` ```

View File

@ -6,11 +6,12 @@ localeTitle: الوصول صفيف البيانات مع فهارس
العنصر الأول لصفيف هو في الموضع صفر. لذلك ، إذا كنت ترغب في الوصول إلى العنصر الأول من صفيف ، يمكنك القيام بذلك على النحو التالي: العنصر الأول لصفيف هو في الموضع صفر. لذلك ، إذا كنت ترغب في الوصول إلى العنصر الأول من صفيف ، يمكنك القيام بذلك على النحو التالي:
`var arr = ["Programming", 123, "Coding", 789]; ```javascript
var arr = ["Programming", 123, "Coding", 789];
var firstElem = arr[0] // This is "Programming" var firstElem = arr[0] // This is "Programming"
var thirdElem = arr[2] // This is "Coding" var thirdElem = arr[2] // This is "Coding"
var fourthElem = arr[3] // This is 789 var fourthElem = arr[3] // This is 789
` ```
لاحظ أن طول الصفيف هو 4 ، وأن موضع آخر عنصر في المصفوفة هو 3. لاحظ أن طول الصفيف هو 4 ، وأن موضع آخر عنصر في المصفوفة هو 3.

View File

@ -6,8 +6,9 @@ localeTitle: الوصول إلى صفائف متعددة الأبعاد مع ف
النظر في مجموعة متعددة الأبعاد التالية: النظر في مجموعة متعددة الأبعاد التالية:
`var arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]; ```javascript
` var arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]];
```
هذا ما يبدو في شكل جداول. هذا ما يبدو في شكل جداول.
@ -15,12 +16,14 @@ localeTitle: الوصول إلى صفائف متعددة الأبعاد مع ف
الآن كل ما عليك فعله هو اختيار إحداثيات البيانات التي تريدها! للحصول على أمثلة ، إذا أردنا أن تساوي `myNum` 8 ، إذن ... الآن كل ما عليك فعله هو اختيار إحداثيات البيانات التي تريدها! للحصول على أمثلة ، إذا أردنا أن تساوي `myNum` 8 ، إذن ...
`var myNum = arr[2][1]; // Equal to 8 ```javascript
` var myNum = arr[2][1]; // Equal to 8
```
أو ، إذا كنت تريد أن تساوي 1. عليك ... أو ، إذا كنت تريد أن تساوي 1. عليك ...
`var myNum = arr[0][0]; // Equal to 1 ```javascript
` var myNum = arr[0][0]; // Equal to 1
```
تبدأ أولاً باختيار العمود الموجود فيه ، ثم تختار الصف. انها نوع من مثل الطائرة تنسيق XY! تبدأ أولاً باختيار العمود الموجود فيه ، ثم تختار الصف. انها نوع من مثل الطائرة تنسيق XY!

View File

@ -16,7 +16,8 @@ localeTitle: الوصول إلى صفائف متداخلة
### الوصول إلى الكائنات داخل المصفوفات باستخدام braket `[]` ونقطة `.` الرموز ### الوصول إلى الكائنات داخل المصفوفات باستخدام braket `[]` ونقطة `.` الرموز
`var garage = [ ```js
var garage = [
{ {
type: 'car', type: 'car',
color: 'red', color: 'red',
@ -35,7 +36,7 @@ localeTitle: الوصول إلى صفائف متداخلة
]; ];
var busColor = garage[2].color; // 'yellow' var busColor = garage[2].color; // 'yellow'
` ```
## حل: ## حل:

View File

@ -8,7 +8,8 @@ localeTitle: الوصول إلى الكائنات المتداخلة
إذا نظرنا إلى هدفنا: إذا نظرنا إلى هدفنا:
`var myStorage = { ```javascript
var myStorage = {
"car": { "car": {
"inside": { "inside": {
"glove box": "maps", "glove box": "maps",
@ -19,7 +20,7 @@ localeTitle: الوصول إلى الكائنات المتداخلة
} }
} }
}; };
` ```
اسم هدفنا هو `myStorage` . اسم هدفنا هو `myStorage` .
@ -29,20 +30,22 @@ localeTitle: الوصول إلى الكائنات المتداخلة
يمكنك تصور بنية الكائن مثل هذا ، إذا كانت تساعد: يمكنك تصور بنية الكائن مثل هذا ، إذا كانت تساعد:
`myStorage ```
myStorage
|-- car |-- car
|--- inside |--- inside
|----- glove box: maps |----- glove box: maps
|----- passenger seat: crumbs |----- passenger seat: crumbs
|--- outside |--- outside
|----- trunk: jack |----- trunk: jack
` ```
مطلوب منا تعيين محتويات `glove box` ، والتي يمكننا رؤيتها متداخلة في الكائن `inside` ، والتي بدورها متداخلة في جسم `car` . مطلوب منا تعيين محتويات `glove box` ، والتي يمكننا رؤيتها متداخلة في الكائن `inside` ، والتي بدورها متداخلة في جسم `car` .
يمكننا استخدام الترميز النقطي للوصول إلى `glove box` النحو التالي: يمكننا استخدام الترميز النقطي للوصول إلى `glove box` النحو التالي:
`var gloveBoxContents = myStorage.car.inside'complete here' ```javascript
` var gloveBoxContents = myStorage.car.inside'complete here'
```
يجب عليك استبدال `complete here` بالطريقة الصحيحة للوصول إلى الخاصية. انظر فكرة أعلاه إذا واجهتك مشكلة. يجب عليك استبدال `complete here` بالطريقة الصحيحة للوصول إلى الخاصية. انظر فكرة أعلاه إذا واجهتك مشكلة.

View File

@ -6,7 +6,8 @@ localeTitle: الوصول إلى خصائص كائن مع تدرج قوس
فيما يلي حل واحد ممكن: فيما يلي حل واحد ممكن:
`var testObj = { ```js
var testObj = {
"an entree": "hamburger", "an entree": "hamburger",
"my side": "veggies", "my side": "veggies",
"the drink": "water" "the drink": "water"
@ -16,4 +17,4 @@ localeTitle: الوصول إلى خصائص كائن مع تدرج قوس
var entreeValue = testObj["an entree"]; // Change this line var entreeValue = testObj["an entree"]; // Change this line
var drinkValue = testObj["the drink"]; // Change this line var drinkValue = testObj["the drink"]; // Change this line
` ```

View File

@ -6,7 +6,8 @@ localeTitle: الوصول إلى خصائص كائن مع ترميز Dot
فيما يلي حل واحد ممكن: فيما يلي حل واحد ممكن:
`var testObj = { ```js
var testObj = {
"hat": "ballcap", "hat": "ballcap",
"shirt": "jersey", "shirt": "jersey",
"shoes": "cleats" "shoes": "cleats"
@ -16,4 +17,4 @@ localeTitle: الوصول إلى خصائص كائن مع ترميز Dot
var hatValue = testObj.hat; // Change this line var hatValue = testObj.hat; // Change this line
var shirtValue = testObj.shirt; // Change this line var shirtValue = testObj.shirt; // Change this line
` ```

View File

@ -6,7 +6,8 @@ localeTitle: الوصول إلى خصائص الكائن مع المتغيرات
إليك حلًا عمليًا في حالة عطلك: إليك حلًا عمليًا في حالة عطلك:
`// Setup ```js
// Setup
var testObj = { var testObj = {
12: "Namath", 12: "Namath",
16: "Montana", 16: "Montana",
@ -17,4 +18,4 @@ localeTitle: الوصول إلى خصائص الكائن مع المتغيرات
var playerNumber = 16; // Change this Line var playerNumber = 16; // Change this Line
var player = testObj[playerNumber]; // Change this Line var player = testObj[playerNumber]; // Change this Line
` ```

View File

@ -6,7 +6,8 @@ localeTitle: أضف خصائص جديدة إلى كائن JavaScript
هنا هو المثال: هنا هو المثال:
`var ourDog = { ```js
var ourDog = {
"name": "Camper", "name": "Camper",
"legs": 4, "legs": 4,
"tails": 1, "tails": 1,
@ -14,11 +15,12 @@ localeTitle: أضف خصائص جديدة إلى كائن JavaScript
}; };
ourDog.bark = "bow-wow"; ourDog.bark = "bow-wow";
` ```
وإليك الحل: وإليك الحل:
`var myDog = { ```js
var myDog = {
"name": "Happy Coder", "name": "Happy Coder",
"legs": 4, "legs": 4,
"tails": 1, "tails": 1,
@ -27,4 +29,4 @@ localeTitle: أضف خصائص جديدة إلى كائن JavaScript
// Only change code below this line. // Only change code below this line.
myDog.bark = "woof"; myDog.bark = "woof";
` ```

View File

@ -8,5 +8,6 @@ localeTitle: التنازل مع القيمة المرتجعة
هنا هو الحل الأساسي رمز: هنا هو الحل الأساسي رمز:
`processed = processArg(7); // Equal to 2 ```javascript
` processed = processArg(7); // Equal to 2
```

View File

@ -30,7 +30,8 @@ _`num < 5` - عودة "صغيرة" `num < 10` - عودة "صغير" `num < 15` -
## حل: ## حل:
`function testSize(num) { ```javascript
function testSize(num) {
// Only change code below this line // Only change code below this line
if (num < 5){ if (num < 5){
return "Tiny"; return "Tiny";
@ -49,7 +50,7 @@ _`num < 5` - عودة "صغيرة" `num < 10` - عودة "صغير" `num < 15` -
} }
// Only change code above this line // Only change code above this line
} }
` ```
### تفسير الشفرة ### تفسير الشفرة

View File

@ -20,7 +20,8 @@ _أضف عامل المساواة إلى الخط المحدد بحيث تقوم
## حل الرمز الأساسي: ## حل الرمز الأساسي:
`function testEqual(val) { ```javascript
function testEqual(val) {
if (val == 12) { // Change this line if (val == 12) { // Change this line
return "Equal"; return "Equal";
} }
@ -28,7 +29,7 @@ _أضف عامل المساواة إلى الخط المحدد بحيث تقوم
} }
// Change this value to test // Change this value to test
testEqual(10); testEqual(10);
` ```
### تفسير الشفرة ### تفسير الشفرة

View File

@ -24,7 +24,8 @@ localeTitle: مقارنة مع مشغل المساواة الصارمة
## حل الرمز الأساسي: ## حل الرمز الأساسي:
`// Setup ```javascript
// Setup
function testStrict(val) { function testStrict(val) {
if (val === 7) { // Change this line if (val === 7) { // Change this line
return "Equal"; return "Equal";
@ -34,7 +35,7 @@ localeTitle: مقارنة مع مشغل المساواة الصارمة
// Change this value to test // Change this value to test
testStrict(10); testStrict(10);
` ```
### تفسير الشفرة ### تفسير الشفرة

View File

@ -20,7 +20,8 @@ localeTitle: مقارنة مع مشغل عدم المساواة الصارم
## حل الرمز الأساسي: ## حل الرمز الأساسي:
`function testStrictNotEqual(val) { ```javascript
function testStrictNotEqual(val) {
if (val !== 17) { if (val !== 17) {
return "Not equal"; return "Not equal";
} }
@ -29,7 +30,7 @@ localeTitle: مقارنة مع مشغل عدم المساواة الصارم
// Change this value to test // Change this value to test
testStrictNotEqual(10); testStrictNotEqual(10);
` ```
### تفسير الشفرة ### تفسير الشفرة

View File

@ -26,7 +26,8 @@ localeTitle: مقارنات مع عامل التشغيل && (المنطقية AN
## حل الرمز الأساسي: ## حل الرمز الأساسي:
`function testLogicalAnd(val) { ```javascript
function testLogicalAnd(val) {
// Only change code below this line // Only change code below this line
if (val <= 50 && val >= 25) { if (val <= 50 && val >= 25) {
@ -39,7 +40,7 @@ localeTitle: مقارنات مع عامل التشغيل && (المنطقية AN
// Change this value to test // Change this value to test
testLogicalAnd(10); testLogicalAnd(10);
` ```
### تفسير الشفرة ### تفسير الشفرة

View File

@ -10,9 +10,10 @@ localeTitle: مقارنات مع المنطقي أو المشغل
أدناه هو نموذج التعليمة البرمجية (أبسط طريقة). أدناه هو نموذج التعليمة البرمجية (أبسط طريقة).
`if ( val < 10 || val > 20 ) { ```javascript
if ( val < 10 || val > 20 ) {
return "Outside"; return "Outside";
} }
` ```
سيعود الرمز أعلاه "خارجي" فقط إذا كان `val` يتراوح بين 10 و 20 (ضمناً). سيعود الرمز أعلاه "خارجي" فقط إذا كان `val` يتراوح بين 10 و 20 (ضمناً).

View File

@ -6,7 +6,8 @@ localeTitle: عد إلى الخلف مع ل حلقة
هنا هو المثال: هنا هو المثال:
`// Example ```javascript
// Example
var ourArray = []; var ourArray = [];
for (var i = 10; i > 0; i -= 2) { for (var i = 10; i > 0; i -= 2) {
@ -17,7 +18,7 @@ localeTitle: عد إلى الخلف مع ل حلقة
var myArray = []; var myArray = [];
// Only change code below this line. // Only change code below this line.
` ```
#### تلميح: 1 #### تلميح: 1
@ -29,7 +30,8 @@ localeTitle: عد إلى الخلف مع ل حلقة
# تحذير SPOILER: SOLUTION AHEAD # تحذير SPOILER: SOLUTION AHEAD
`var ourArray = []; ```javascript
var ourArray = [];
for (var i = 10; i > 0; i -= 2) { for (var i = 10; i > 0; i -= 2) {
ourArray.push(i); ourArray.push(i);
@ -42,4 +44,4 @@ localeTitle: عد إلى الخلف مع ل حلقة
for (var i = 9; i > 0; i-=2){ for (var i = 9; i > 0; i-=2){
myArray.push(i) myArray.push(i)
} }
` ```

View File

@ -105,7 +105,8 @@ localeTitle: عد بطاقات
## حل رمز إضافي: ## حل رمز إضافي:
`function cc(card) { ```javascript
function cc(card) {
// Only change code below this line // Only change code below this line
var regex = /[JQKA]/; var regex = /[JQKA]/;
if (card > 1 && card < 7){count++;} if (card > 1 && card < 7){count++;}
@ -116,7 +117,7 @@ localeTitle: عد بطاقات
// Only change code above this line // Only change code above this line
} }
` ```
### تفسير الشفرة ### تفسير الشفرة

View File

@ -10,7 +10,8 @@ localeTitle: حذف الخصائص من كائن JavaScript
# تحذير SPOILER: SOLUTION AHEAD # تحذير SPOILER: SOLUTION AHEAD
`var ourDog = { ```javascript
var ourDog = {
"name": "Camper", "name": "Camper",
"legs": 4, "legs": 4,
"tails": 1, "tails": 1,
@ -31,4 +32,4 @@ localeTitle: حذف الخصائص من كائن JavaScript
// Only change code below this line. // Only change code below this line.
delete myDog.tails; delete myDog.tails;
` ```

View File

@ -10,8 +10,9 @@ localeTitle: الهروب من الأسعار الحرفيه في الاوتار
## حل ## حل
`var myStr = "I am a \"double quoted\" string inside \"double quotes\"."; ```javascript
var myStr = "I am a \"double quoted\" string inside \"double quotes\".";
var otherStr = 'I am a \'single quoted\' string inside \'single quotes\'.'; var otherStr = 'I am a \'single quoted\' string inside \'single quotes\'.';
var noEscapeSingle = "There is no need to 'escape' the single quotes."; var noEscapeSingle = "There is no need to 'escape' the single quotes.";
var noEscapeDouble = 'There is no need to "escape" the double quotes.'; var noEscapeDouble = 'There is no need to "escape" the double quotes.';
` ```

View File

@ -14,25 +14,27 @@ localeTitle: النطاق العالمي والوظائف
عند إضافة `var` قبل اسم المتغير ، يتم تحديد نطاقه حسب مكان وضعه. مثل ذلك: عند إضافة `var` قبل اسم المتغير ، يتم تحديد نطاقه حسب مكان وضعه. مثل ذلك:
`var num1 = 18; // Global scope ```javascript
var num1 = 18; // Global scope
function fun() { function fun() {
var num2 = 20; // Local (Function) Scope var num2 = 20; // Local (Function) Scope
if (true) { if (true) {
var num3 = 22; // Block Scope (within an if-statement) var num3 = 22; // Block Scope (within an if-statement)
} }
} }
` ```
عندما لا تفعل ، هذه هي النتيجة: عندما لا تفعل ، هذه هي النتيجة:
`num1 = 18; // Global scope ```javascript
num1 = 18; // Global scope
function fun() { function fun() {
num2 = 20; // Global Scope num2 = 20; // Global Scope
if (true) { if (true) {
num3 = 22; // Global Scope num3 = 22; // Global Scope
} }
} }
` ```
حسنًا ، إليك حل الشفرة الأساسية. حسنًا ، إليك حل الشفرة الأساسية.

View File

@ -8,7 +8,8 @@ localeTitle: نطاق عالمي مقابل نطاق محلي في الوظائ
في هذا التمرين ، يكون لديك متغير `outerWear` في النطاق العالمي باستخدام "T-shirt" باعتباره قيمته. يجب عليك الآن إنشاء متغير آخر يسمى `outerWear` ، ولكن هذه المرة داخل الدالة `myOutfit()` . الحل الأساسي رمز كما يلي: في هذا التمرين ، يكون لديك متغير `outerWear` في النطاق العالمي باستخدام "T-shirt" باعتباره قيمته. يجب عليك الآن إنشاء متغير آخر يسمى `outerWear` ، ولكن هذه المرة داخل الدالة `myOutfit()` . الحل الأساسي رمز كما يلي:
`var outerWear = "T-shirt"; ```javascript
var outerWear = "T-shirt";
function myOutfit() { function myOutfit() {
var outerWear = "sweater"; var outerWear = "sweater";
@ -16,6 +17,6 @@ localeTitle: نطاق عالمي مقابل نطاق محلي في الوظائ
} }
myOutfit(); myOutfit();
` ```
ستقوم الدالة بإرجاع أقرب `outerWear` يمكن العثور عليه. منذ أن أنشأنا `outerWear` داخل الدالة ، وهذا هو "الأقرب" ، وبالتالي فإن الدالة ستعود "سترة". ستقوم الدالة بإرجاع أقرب `outerWear` يمكن العثور عليه. منذ أن أنشأنا `outerWear` داخل الدالة ، وهذا هو "الأقرب" ، وبالتالي فإن الدالة ستعود "سترة".

View File

@ -82,7 +82,8 @@ par + 2 | "بوجيه مزدوج" > = par + 3 | "اذهب للمنزل!"
## حل رمز بديل: ## حل رمز بديل:
`var names = ["Hole-in-one!", "Eagle", "Birdie", "Par", "Bogey", "Double Bogey", "Go Home!"]; ```javascript
var names = ["Hole-in-one!", "Eagle", "Birdie", "Par", "Bogey", "Double Bogey", "Go Home!"];
function golfScore(par, strokes) { function golfScore(par, strokes) {
// Only change code below this line // Only change code below this line
if (strokes == 1){ if (strokes == 1){
@ -109,7 +110,7 @@ par + 2 | "بوجيه مزدوج" > = par + 3 | "اذهب للمنزل!"
// Change these values to test // Change these values to test
golfScore(5, 4); golfScore(5, 4);
` ```
\## شرح الكود نظرًا لأن لدينا بالفعل صفيفًا محددًا في `names` المتغيرات ، فيمكننا الاستفادة منه واستخدامه في عبارات الإرجاع باستخدام الفهارس (على سبيل المثال: `names[0] is the first one` ). بهذه الطريقة ، إذا احتجت في أي وقت إلى تغيير نتيجة معينة فلن تحتاج إلى البحث عنها داخل الوظيفة ، فستكون في البداية ، في الصفيف الخاص بك. \## شرح الكود نظرًا لأن لدينا بالفعل صفيفًا محددًا في `names` المتغيرات ، فيمكننا الاستفادة منه واستخدامه في عبارات الإرجاع باستخدام الفهارس (على سبيل المثال: `names[0] is the first one` ). بهذه الطريقة ، إذا احتجت في أي وقت إلى تغيير نتيجة معينة فلن تحتاج إلى البحث عنها داخل الوظيفة ، فستكون في البداية ، في الصفيف الخاص بك.

View File

@ -6,7 +6,8 @@ localeTitle: تكرار الأرقام الفردية مع ل حلقة
هنا هو المثال: هنا هو المثال:
`var ourArray = []; ```javascript
var ourArray = [];
for (var i = 0; i < 10; i += 2) { for (var i = 0; i < 10; i += 2) {
ourArray.push(i); ourArray.push(i);
@ -16,7 +17,7 @@ localeTitle: تكرار الأرقام الفردية مع ل حلقة
var myArray = []; var myArray = [];
// Only change code below this line. // Only change code below this line.
` ```
وإليك الحل: بعد السلسلة `// Only change code below this line.` نضيف `for` حلقة. تحتاج إلى نسخ حلقة من الجزء العلوي: وإليك الحل: بعد السلسلة `// Only change code below this line.` نضيف `for` حلقة. تحتاج إلى نسخ حلقة من الجزء العلوي:

View File

@ -8,11 +8,12 @@ localeTitle: تكرار مع JavaScript Do ... While Loops
## حل ## حل
`var myArray = []; ```javascript
var myArray = [];
var i = 10; var i = 10;
do { do {
myArray.push(i); myArray.push(i);
i++; i++;
} while(i <= 10); } while(i <= 10);
` ```

View File

@ -6,25 +6,28 @@ localeTitle: تكررت مع جافا سكريبت في حين الحلقات
بينما سيتم تشغيل حلقات طالما أن الشرط الموجود داخل () صحيح. مثال: بينما سيتم تشغيل حلقات طالما أن الشرط الموجود داخل () صحيح. مثال:
`while(condition){ ```javascript
while(condition){
code... code...
} }
` ```
## تلميح 1: ## تلميح 1:
استخدم متغير مكرر مثل i في حالتك استخدم متغير مكرر مثل i في حالتك
`var i = 0; ```javascript
var i = 0;
while(i <= 4){ while(i <= 4){
} }
` ```
## Spoiler Alert Solution إلى الأمام! ## Spoiler Alert Solution إلى الأمام!
## حل: ## حل:
`// Setup ```javascript
// Setup
var myArray = []; var myArray = [];
// Only change code below this line. // Only change code below this line.
@ -33,4 +36,4 @@ localeTitle: تكررت مع جافا سكريبت في حين الحلقات
myArray.push(i); myArray.push(i);
i++; i++;
} }
` ```

View File

@ -8,11 +8,12 @@ localeTitle: النطاق المحلي والوظائف
فيما يلي الحل الأساسي للتعليمات البرمجية لإنشاء متغير `myVar` محلي. فيما يلي الحل الأساسي للتعليمات البرمجية لإنشاء متغير `myVar` محلي.
`function myLocalScope() { ```javascript
function myLocalScope() {
var myVar; var myVar;
console.log(myVar); console.log(myVar);
} }
myLocalScope(); myLocalScope();
` ```
المتغير موجود فقط في الوظيفة. خارج الوظيفة ، هو غير موجود. المتغير موجود فقط في الوظيفة. خارج الوظيفة ، هو غير موجود.

View File

@ -14,10 +14,11 @@ localeTitle: التعامل مع صفائف مع البوب ()
## المفسد! حل الرمز: ## المفسد! حل الرمز:
`var removedFromMyArray = myArray.pop(); ```javascript
var removedFromMyArray = myArray.pop();
======= =======
Remove the last element of an array with the pop() method, like so: Remove the last element of an array with the pop() method, like so:
` ```
جافا سكريبت var arr = \[1، 2، 3، 4، 5\]؛ arr.pop ()؛ // هذا تخلص من 5 جافا سكريبت var arr = \[1، 2، 3، 4، 5\]؛ arr.pop ()؛ // هذا تخلص من 5

View File

@ -6,6 +6,7 @@ localeTitle: التعامل مع صفائف بدفع ()
تسمح لك طريقة `push()` بإلحاق (إضافة إلى النهاية) عنصر إلى مصفوفة. مثل ذلك… تسمح لك طريقة `push()` بإلحاق (إضافة إلى النهاية) عنصر إلى مصفوفة. مثل ذلك…
`var arr = [1, 2, 3, 4]; ```javascript
var arr = [1, 2, 3, 4];
arr.push(5); // Now, the array is [1, 2, 3, 4, 5] arr.push(5); // Now, the array is [1, 2, 3, 4, 5]
` ```

View File

@ -6,6 +6,7 @@ localeTitle: التعامل مع صفائف مع shift ()
بينما تم استخدام `pop()` للتخلص من العنصر الأخير من صفيف ، يتم استخدام `shift()` للتخلص من العنصر الأول. إنها تشبه أنك تقوم بتحويل العناصر إلى موضع واحد. تحقق من هذا: بينما تم استخدام `pop()` للتخلص من العنصر الأخير من صفيف ، يتم استخدام `shift()` للتخلص من العنصر الأول. إنها تشبه أنك تقوم بتحويل العناصر إلى موضع واحد. تحقق من هذا:
`var arr = [1, 2, 3, 4, 5]; ```javascript
var arr = [1, 2, 3, 4, 5];
arr.shift(); // Gets rid of the 1 arr.shift(); // Gets rid of the 1
` ```

View File

@ -6,6 +6,7 @@ localeTitle: معالجة صفائف مع unshift ()
بينما `push()` إضافة عناصر إلى الجزء الخلفي من المصفوفة ، يضيف `unshift()` إلى الأمام. كل ما عليك القيام به هو: بينما `push()` إضافة عناصر إلى الجزء الخلفي من المصفوفة ، يضيف `unshift()` إلى الأمام. كل ما عليك القيام به هو:
`var arr = [2, 3, 4, 5]; ```javascript
var arr = [2, 3, 4, 5];
arr.unshift(1); // Now, the array has 1 in the front arr.unshift(1); // Now, the array has 1 in the front
` ```

View File

@ -6,7 +6,8 @@ localeTitle: معالجة الكائنات المعقدة
هنا هو المثال: هنا هو المثال:
`var myMusic = [ ```javascript
var myMusic = [
{ {
"artist": "Billy Joel", "artist": "Billy Joel",
"title": "Piano Man", "title": "Piano Man",
@ -20,7 +21,7 @@ localeTitle: معالجة الكائنات المعقدة
} }
// Add record here // Add record here
]; ];
` ```
وإليك الحل: بعد السلسلة `// Add record here` نقوم بإضافة ألبوم جديد إلى `myMusic` . أنت في حاجة للبدء من `,` . ويمكنك فقط نسخ ألبوم تم إنشاؤه بالفعل: `javascript { "artist": "Billy Joel", "title": "Piano Man", "release_year": 1973, "formats": [ "CD", "8T", "LP" ], "gold": true }` وإليك الحل: بعد السلسلة `// Add record here` نقوم بإضافة ألبوم جديد إلى `myMusic` . أنت في حاجة للبدء من `,` . ويمكنك فقط نسخ ألبوم تم إنشاؤه بالفعل: `javascript { "artist": "Billy Joel", "title": "Piano Man", "release_year": 1973, "formats": [ "CD", "8T", "LP" ], "gold": true }`

View File

@ -8,7 +8,8 @@ localeTitle: خيارات متعددة مماثلة في بيانات التبد
_إذا تم حذف بيان الفاصل من حالة عبارة التبديل ، يتم تنفيذ العبارة (الحالات) التالية إلى أن تتم مصادفة فاصل. إذا كان لديك مدخلات متعددة بنفس المخرجات ، فيمكنك تمثيلها في بيان تبديل مثل هذا:_ _إذا تم حذف بيان الفاصل من حالة عبارة التبديل ، يتم تنفيذ العبارة (الحالات) التالية إلى أن تتم مصادفة فاصل. إذا كان لديك مدخلات متعددة بنفس المخرجات ، فيمكنك تمثيلها في بيان تبديل مثل هذا:_
`switch(val) { ```javascript
switch(val) {
case 1: case 1:
case 2: case 2:
case 3: case 3:
@ -17,7 +18,7 @@ _إذا تم حذف بيان الفاصل من حالة عبارة التبدي
case 4: case 4:
result = "4 alone"; result = "4 alone";
} }
` ```
_الحالات 1 و 2 و 3 ستنتج نفس النتيجة._ _الحالات 1 و 2 و 3 ستنتج نفس النتيجة._

View File

@ -6,7 +6,8 @@ localeTitle: عش صف واحد داخل صفيف آخر
المصفوفات هي أحادية البعد؛ هذا يعني أنه يتم تخزين صف واحد فقط من البيانات. ولكن يمكنك إنشاء صفيف متعدد الأبعاد عن طريق وضع المصفوفات داخل المصفوفات! مثل ذلك: المصفوفات هي أحادية البعد؛ هذا يعني أنه يتم تخزين صف واحد فقط من البيانات. ولكن يمكنك إنشاء صفيف متعدد الأبعاد عن طريق وضع المصفوفات داخل المصفوفات! مثل ذلك:
`var arr = [["Two-dimensional", 2], ["Two rows", 12]]; ```javascript
` var arr = [["Two-dimensional", 2], ["Two rows", 12]];
```
الصفيف أعلاه له بعدان. الصفيف أعلاه له بعدان.

View File

@ -12,7 +12,8 @@ localeTitle: التعشيش للحلقات
هنا مثال: هنا مثال:
`var arr = [ ```
var arr = [
[1,2], [3,4], [5,6] [1,2], [3,4], [5,6]
]; ];
for (var i=0; i < arr.length; i++) { for (var i=0; i < arr.length; i++) {
@ -20,7 +21,7 @@ localeTitle: التعشيش للحلقات
console.log(arr[i][j]); console.log(arr[i][j]);
} }
} }
` ```
هذا إخراج كل عنصر فرعي في `arr` واحد في كل مرة. لاحظ أنه بالنسبة للحلقة الداخلية ، فإننا نتحقق من طول arr \[i\] ، لأن arr \[i\] هو نفسه مصفوفة. هذا إخراج كل عنصر فرعي في `arr` واحد في كل مرة. لاحظ أنه بالنسبة للحلقة الداخلية ، فإننا نتحقق من طول arr \[i\] ، لأن arr \[i\] هو نفسه مصفوفة.
@ -57,7 +58,8 @@ _تنبيه المفسد!_ ![](https://discourse-user-assets.s3.amazonaws.com/or
: مبتدئ: **حل الرمز الأساسي:** : مبتدئ: **حل الرمز الأساسي:**
`function multiplyAll(arr) { ```
function multiplyAll(arr) {
var product = 1; var product = 1;
// Only change code below this line // Only change code below this line
for(var i=0; i < arr.length; i++){ for(var i=0; i < arr.length; i++){
@ -71,7 +73,7 @@ _تنبيه المفسد!_ ![](https://discourse-user-assets.s3.amazonaws.com/or
// Modify values below to test your code // Modify values below to test your code
multiplyAll([[1,2],[3,4],[5,6,7]]); multiplyAll([[1,2],[3,4],[5,6,7]]);
` ```
: صاروخ: **[تشغيل التعليمات البرمجية](https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-javascript/nesting-for-loops/)** : صاروخ: **[تشغيل التعليمات البرمجية](https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-javascript/nesting-for-loops/)**

View File

@ -6,13 +6,15 @@ localeTitle: تمرير القيم إلى دالات مع الوسيطات
مهمتنا هي إنشاء وظيفة لديها **معلمات** . هذه هي المدخلات التي تحدد إخراج الدالة. تضع المتابعين داخل `()` ، مثل: مهمتنا هي إنشاء وظيفة لديها **معلمات** . هذه هي المدخلات التي تحدد إخراج الدالة. تضع المتابعين داخل `()` ، مثل:
`function functionWithArgs(one, two) { ```javascript
function functionWithArgs(one, two) {
console.log(one + two); console.log(one + two);
} }
` ```
لدينا الآن لإضافة رمز داخل الأقواس. مهمتنا هي إضافة `one` `two` ، وطباعة المجموع إلى وحدة التحكم. هنا هو الحل الأساسي رمز: لدينا الآن لإضافة رمز داخل الأقواس. مهمتنا هي إضافة `one` `two` ، وطباعة المجموع إلى وحدة التحكم. هنا هو الحل الأساسي رمز:
`functionWithArgs(7, 3); ```javascript
functionWithArgs(7, 3);
//This will console log 10. //This will console log 10.
` ```

View File

@ -6,7 +6,8 @@ localeTitle: إرجاع قيمة من دالة مع العودة
باستخدام `return` ، يمكنك جعل بيانات الإخراج الوظائف. هنا هو الحل الأساسي رمز: باستخدام `return` ، يمكنك جعل بيانات الإخراج الوظائف. هنا هو الحل الأساسي رمز:
`function timesFive(num) { ```javascript
function timesFive(num) {
return num * 5; return num * 5;
} }
` ```

View File

@ -10,13 +10,14 @@ localeTitle: إرجاع القيم المنطقية من الدالات
_فيكس وظيفة هو `isLess` من إزالة العبارة `if...else` ._ _فيكس وظيفة هو `isLess` من إزالة العبارة `if...else` ._
`// Fix this code ```js
// Fix this code
if (a < b) { if (a < b) {
return true; return true;
} else { } else {
return false; return false;
} }
` ```
#### تلميح 1 #### تلميح 1
@ -36,13 +37,14 @@ _فيكس وظيفة هو `isLess` من إزالة العبارة `if...else` ._
## حل الرمز: ## حل الرمز:
`function isLess(a, b) { ```javascript
function isLess(a, b) {
// Fix this code // Fix this code
return a <= b; return a <= b;
} }
// Change these values to test // Change these values to test
isLess(10, 15); isLess(10, 15);
` ```
### مصادر ### مصادر

View File

@ -6,8 +6,9 @@ localeTitle: تخزين قيم متعددة في متغير واحد باستخ
تسمح لك المصفوفات بتخزين الكثير من البيانات المختلفة ، ضمن متغير واحد. كل ما عليك القيام به هو وضع البيانات في الصفيف ، مفصولة بفواصل. مثل ذلك… تسمح لك المصفوفات بتخزين الكثير من البيانات المختلفة ، ضمن متغير واحد. كل ما عليك القيام به هو وضع البيانات في الصفيف ، مفصولة بفواصل. مثل ذلك…
`var arr = ["Code for change", 123]; ```javascript
` var arr = ["Code for change", 123];
```
تذكر ، يتم تعريف صفيف كصف من الأشياء. أنت تخزن بيانات مختلفة في "صف" مفرد (متغير). تذكر ، يتم تعريف صفيف كصف من الأشياء. أنت تخزن بيانات مختلفة في "صف" مفرد (متغير).

View File

@ -27,13 +27,14 @@ localeTitle: اختبار كائنات للعقارات
نحن لا نغير أي شيء هنا: نحن لا نغير أي شيء هنا:
`// Setup ```javascript
// Setup
var myObj = { var myObj = {
gift: "pony", gift: "pony",
pet: "kitten", pet: "kitten",
bed: "sleigh" bed: "sleigh"
}; };
` ```
كذلك ، في الجسم من الدالة التي نستخدمها. `.hasOwnProperty(propname)` للكائنات لتحديد ما إذا كان هذا الكائن لديه اسم خاصية معينة. `if/else` العبارة `if/else` ذات القيم المنطقية ستساعدنا في هذا: كذلك ، في الجسم من الدالة التي نستخدمها. `.hasOwnProperty(propname)` للكائنات لتحديد ما إذا كان هذا الكائن لديه اسم خاصية معينة. `if/else` العبارة `if/else` ذات القيم المنطقية ستساعدنا في هذا:

View File

@ -20,7 +20,8 @@ localeTitle: فهم القيم المنطقية
## ![:beginner:](https://forum.freecodecamp.com/images/emoji/emoji_one/beginner.png?v=3 ":مبتدئ:") حل الرمز الأساسي: ## ![:beginner:](https://forum.freecodecamp.com/images/emoji/emoji_one/beginner.png?v=3 ":مبتدئ:") حل الرمز الأساسي:
`function welcomeToBooleans() { ```javascript
function welcomeToBooleans() {
// Only change code below this line. // Only change code below this line.
@ -28,7 +29,7 @@ localeTitle: فهم القيم المنطقية
// Only change code above this line. // Only change code above this line.
} }
` ```
### تفسير الشفرة ### تفسير الشفرة

View File

@ -8,12 +8,14 @@ localeTitle: فهم قيمة غير محددة عاد من وظيفة
المضي قدما وتحديد `addFive()` مثل ذلك ... المضي قدما وتحديد `addFive()` مثل ذلك ...
`function addFive() { ```javascript
function addFive() {
sum += 5; sum += 5;
} }
` ```
كما ترى ، يتم إضافة `sum` ب 5 بدون مشاكل ، ولكن بما أنه لا يوجد بيان إرجاع ، فهناك مخرجات `undefined` . كما ترى ، يتم إضافة `sum` ب 5 بدون مشاكل ، ولكن بما أنه لا يوجد بيان إرجاع ، فهناك مخرجات `undefined` .
`var result = addFive(); // This is undefined ```javascript
` var result = addFive(); // This is undefined
```

View File

@ -12,7 +12,8 @@ localeTitle: تحديث خصائص الكائن
## حل: ## حل:
`// Setup ```javascript
// Setup
var myDog = { var myDog = {
"name": "Coder", "name": "Coder",
"legs": 4, "legs": 4,
@ -23,4 +24,4 @@ localeTitle: تحديث خصائص الكائن
// Only change code below this line. // Only change code below this line.
myDog.name = "Happy Coder"; // Solution myDog.name = "Happy Coder"; // Solution
` ```

View File

@ -10,9 +10,10 @@ localeTitle: استخدم المشغل الشرطي (الثالوثي)
### تحذير حل قدما! ### تحذير حل قدما!
`function checkEqual(a, b) { ```javascript
function checkEqual(a, b) {
return (a = b ? true : false ); return (a = b ? true : false );
} }
checkEqual(1, 2); checkEqual(1, 2);
` ```

View File

@ -6,7 +6,8 @@ localeTitle: استخدام كائنات لعمليات البحث
هنا هو المثال: هنا هو المثال:
`// Setup ```javascript
// Setup
function phoneticLookup(val) { function phoneticLookup(val) {
var result = ""; var result = "";
@ -37,13 +38,14 @@ localeTitle: استخدام كائنات لعمليات البحث
// Change this value to test // Change this value to test
phoneticLookup("charlie"); phoneticLookup("charlie");
` ```
وإليك الحل: نحن لا نغير أي شيء هنا: وإليك الحل: نحن لا نغير أي شيء هنا:
`function phoneticLookup(val) { ```javascript
function phoneticLookup(val) {
var result = ""; var result = "";
` ```
نحن بحاجة إلى تحويل بيان التبديل إلى كائن. نقل كل قيم `case` إلى خصائص الكائن: نحن بحاجة إلى تحويل بيان التبديل إلى كائن. نقل كل قيم `case` إلى خصائص الكائن:

View File

@ -8,12 +8,14 @@ localeTitle: اكتب Reusable JavaScript مع الوظائف
تبدأ من خلال استخدام الكلمة `function` ، ثم كتابة اسم الدالة (الذي يتبع تنسيق حالة الجمل). ثم ، اكتب `()` ، وإنشاء الأقواس `{}` . مثل ذلك: تبدأ من خلال استخدام الكلمة `function` ، ثم كتابة اسم الدالة (الذي يتبع تنسيق حالة الجمل). ثم ، اكتب `()` ، وإنشاء الأقواس `{}` . مثل ذلك:
`function reusableFunction() {} ```javascript
` function reusableFunction() {}
```
الآن ، أصبحت الدالة جاهزة لكتابتها. استخدم `console.log()` لطباعة رسالة في وحدة التحكم. الحل الأساسي رمز كما يلي: الآن ، أصبحت الدالة جاهزة لكتابتها. استخدم `console.log()` لطباعة رسالة في وحدة التحكم. الحل الأساسي رمز كما يلي:
`function reusableFunction() { ```javascript
function reusableFunction() {
console.log("Hi World"); console.log("Hi World");
} }
` ```

View File

@ -4,10 +4,11 @@ localeTitle: Catch Arguments Passed in the Wrong Order When Calling a Function
--- ---
## Catch Arguments Passed in the Wrong Order When Calling a Function ## Catch Arguments Passed in the Wrong Order When Calling a Function
`function raiseToPower(b, e) { ```javascript
function raiseToPower(b, e) {
return Math.pow(b, e); return Math.pow(b, e);
} }
` ```
* تستخدم الوظيفة المذكورة أعلاه لرفع العدد الأساسي `b` إلى قوة الأس `e` . * تستخدم الوظيفة المذكورة أعلاه لرفع العدد الأساسي `b` إلى قوة الأس `e` .
* يجب استدعاء الدالة على وجه التحديد مع المتغيرات بالترتيب الصحيح. وبخلاف ذلك ، تقوم الوظيفة بخلط كلا المتغيرين وإرجاع إجابة غير مرغوبة. * يجب استدعاء الدالة على وجه التحديد مع المتغيرات بالترتيب الصحيح. وبخلاف ذلك ، تقوم الوظيفة بخلط كلا المتغيرين وإرجاع إجابة غير مرغوبة.
@ -15,5 +16,6 @@ localeTitle: Catch Arguments Passed in the Wrong Order When Calling a Function
## حل: ## حل:
`let power = raiseToPower(base, exp); ```javascript
` let power = raiseToPower(base, exp);
```

View File

@ -9,7 +9,8 @@ localeTitle: قبض على الاستخدام المختلط من أسعار م
## حل: ## حل:
`//Solution1: ```javascript
//Solution1:
let innerHtml = "<p>Click here to <a href=\"#Home\">return home</a></p>"; let innerHtml = "<p>Click here to <a href=\"#Home\">return home</a></p>";
console.log(innerHtml); console.log(innerHtml);
` ```

View File

@ -8,12 +8,13 @@ localeTitle: القبض عن طريق واحدة من الأخطاء عند اس
بسبب الطريقة التي تعمل بها فهارس جافا سكريبت `firstFive` لديها **خمسة عناصر** لكنها مفهرسة من **0 إلى 4** ! بسبب الطريقة التي تعمل بها فهارس جافا سكريبت `firstFive` لديها **خمسة عناصر** لكنها مفهرسة من **0 إلى 4** !
`console.log(len); // 5 ```javascript
console.log(len); // 5
console.log(firstFive[0]); // 1 console.log(firstFive[0]); // 1
/**/ /**/
console.log(firstFive[4]); // 5 console.log(firstFive[4]); // 5
console.log(firstFive[5]); // undefined console.log(firstFive[5]); // undefined
` ```
يجب أن يعطيك ما يكفي لإدراك حدود `firstFive` . توجيه انتباهك إلى الحلقة. ماذا تعمل، أو ماذا تفعل؟ يمكنك محاولة تصحيح الأخطاء لمعرفة ذلك! يجب أن يعطيك ما يكفي لإدراك حدود `firstFive` . توجيه انتباهك إلى الحلقة. ماذا تعمل، أو ماذا تفعل؟ يمكنك محاولة تصحيح الأخطاء لمعرفة ذلك!

View File

@ -6,13 +6,15 @@ localeTitle: قبض على الأقواس غير المغلقة ، بين قوس
تقلل طريقة تقليل () صفيفًا إلى قيمة واحدة. إذا لم تكن على دراية بها ، يعرض التعليمة البرمجية التالية مثالاً على استخدام الطريقة: تقلل طريقة تقليل () صفيفًا إلى قيمة واحدة. إذا لم تكن على دراية بها ، يعرض التعليمة البرمجية التالية مثالاً على استخدام الطريقة:
`const array1 = [1, 2, 3, 4]; ```
const array1 = [1, 2, 3, 4];
console.log(array1.reduce((accumulator, currentValue) => accumulator + currentValue)); // expected output: 10 console.log(array1.reduce((accumulator, currentValue) => accumulator + currentValue)); // expected output: 10
` ```
يمكنك أيضًا تعريف الوسيطة إلى طريقة الاختزال كمتغير أو ثابت وتسليمها إلى الوظيفة ، على سبيل المثال ، يمكنك أيضًا تعريف الوسيطة إلى طريقة الاختزال كمتغير أو ثابت وتسليمها إلى الوظيفة ، على سبيل المثال ،
`const array1 = [1, 2, 3, 4]; ```
const array1 = [1, 2, 3, 4];
const reducer = (accumulator, currentValue) => accumulator + currentValue; const reducer = (accumulator, currentValue) => accumulator + currentValue;
// 1 + 2 + 3 + 4 // 1 + 2 + 3 + 4
@ -20,7 +22,7 @@ localeTitle: قبض على الأقواس غير المغلقة ، بين قوس
// 5 + 1 + 2 + 3 + 4 // 5 + 1 + 2 + 3 + 4
console.log(array1.reduce(reducer, 5)); // expected output: 15 console.log(array1.reduce(reducer, 5)); // expected output: 15
` ```
يمكنك رؤية وتشغيل هذا الرمز في [Array.prototype.reduce ()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce) . يمكنك رؤية وتشغيل هذا الرمز في [Array.prototype.reduce ()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce) .

View File

@ -9,7 +9,8 @@ localeTitle: قبض على استخدام مشغل التعيين بدلا من
## حل ## حل
`let x = 7; ```javascript
let x = 7;
let y = 9; let y = 9;
let result = "to come"; let result = "to come";
@ -20,4 +21,4 @@ localeTitle: قبض على استخدام مشغل التعيين بدلا من
} }
console.log(result); console.log(result);
` ```

View File

@ -8,21 +8,23 @@ localeTitle: منع حلقات لا نهائية مع شرط محطة صالح
* لذا يحدث الخطأ في هذا التحدي بسبب الشرط - `i != 4` - في حلقة for. * لذا يحدث الخطأ في هذا التحدي بسبب الشرط - `i != 4` - في حلقة for.
* إذا ألقيت نظرة عن كثب على الرمز: * إذا ألقيت نظرة عن كثب على الرمز:
`function myFunc() { ```javascript
function myFunc() {
for (let i = 1; i != 4; i += 2) { for (let i = 1; i != 4; i += 2) {
console.log("Still going!"); console.log("Still going!");
} }
} }
` ```
* سترى أن `i` هو initialised أولا ك 1 وبعد كل تكرار للحلقة، `i` يتزايد بنسبة 2. * سترى أن `i` هو initialised أولا ك 1 وبعد كل تكرار للحلقة، `i` يتزايد بنسبة 2.
* باستخدام هذا المنطق ، بعد التكرار الأول - `i = 3` والتكرار الثاني `i = 5` ، لن يتم استيفاء الشرط `i != 4` وستحدث حلقة لا نهائية. * باستخدام هذا المنطق ، بعد التكرار الأول - `i = 3` والتكرار الثاني `i = 5` ، لن يتم استيفاء الشرط `i != 4` وستحدث حلقة لا نهائية.
## حل: ## حل:
`function myFunc() { ```javascript
function myFunc() {
for (let i = 1; i <= 4; i += 2) { for (let i = 1; i <= 4; i += 2) {
console.log("Still going!"); console.log("Still going!");
} }
} }
` ```

View File

@ -7,28 +7,31 @@ localeTitle: استخدام الحذر عند Reinitializing متغيرات دا
* يجب حل هذا التحدي من خلال إعادة تعريف نطاق `row[]` . * يجب حل هذا التحدي من خلال إعادة تعريف نطاق `row[]` .
* فيما يلي مثال على المصفوفة المطلوبة. * فيما يلي مثال على المصفوفة المطلوبة.
`[ ```javascript
[
[0][0], [0][0],
[0][0], [0][0],
[0][0] [0][0]
] ]
` ```
* ومع ذلك ، فإن المصفوفة الحالية - الموضحة أدناه - بعيدة عن المصفوفة المرغوبة * ومع ذلك ، فإن المصفوفة الحالية - الموضحة أدناه - بعيدة عن المصفوفة المرغوبة
`[ ```javascript
[
[0][0][0][0][0][0], [0][0][0][0][0][0],
[0][0][0][0][0][0], [0][0][0][0][0][0],
[0][0][0][0][0][0] [0][0][0][0][0][0]
] ]
` ```
* يحدث هذا الخطأ بسبب `row[]` صف يتم الإعلان عنه كمتغير عمومي خارج الحلقة المتداخلة. * يحدث هذا الخطأ بسبب `row[]` صف يتم الإعلان عنه كمتغير عمومي خارج الحلقة المتداخلة.
* ومع ذلك ، لملء المصفوفة بشكل صحيح يجب إعادة تعيين `row[]` بعد كل تكرار للحلقة الخارجية. * ومع ذلك ، لملء المصفوفة بشكل صحيح يجب إعادة تعيين `row[]` بعد كل تكرار للحلقة الخارجية.
## حل ## حل
`function zeroArray(m, n) { ```javascript
function zeroArray(m, n) {
let newArray = []; let newArray = [];
for (let i = 0; i < m; i++) { for (let i = 0; i < m; i++) {
let row = []; /* <----- row has been declared inside the outer loop. let row = []; /* <----- row has been declared inside the outer loop.
@ -44,4 +47,4 @@ localeTitle: استخدام الحذر عند Reinitializing متغيرات دا
} }
let matrix = zeroArray(3, 2); let matrix = zeroArray(3, 2);
console.log(matrix); console.log(matrix);
` ```

View File

@ -8,6 +8,7 @@ localeTitle: استخدم typeof للتحقق من نوع المتغير
## حل: ## حل:
`console.log(typeof seven); ```javascript
console.log(typeof seven);
console.log(typeof three); console.log(typeof three);
` ```

View File

@ -14,6 +14,7 @@ localeTitle: قم بإنشاء "تصدير تراجعي" باستخدام الإ
## حل: ## حل:
`"use strict"; ```javascript
"use strict";
export default function subtract(x,y) {return x - y;} export default function subtract(x,y) {return x - y;}
` ```

View File

@ -14,7 +14,8 @@ localeTitle: استيراد تصدير افتراضي
## حل: ## حل:
`"use strict"; ```javascript
"use strict";
import subtract from "math_functions"; import subtract from "math_functions";
subtract(7,4); subtract(7,4);
` ```

View File

@ -8,7 +8,8 @@ localeTitle: تعيين المعلمات الافتراضية لوظائفك
### : checkered\_flag: مشكلة التفسير: ### : checkered\_flag: مشكلة التفسير:
`const increment = (function() { ```javascript
const increment = (function() {
"use strict"; "use strict";
return function increment(number, value) { return function increment(number, value) {
return number + value; return number + value;
@ -16,7 +17,7 @@ localeTitle: تعيين المعلمات الافتراضية لوظائفك
})(); })();
console.log(increment(5, 2)); // returns 7 console.log(increment(5, 2)); // returns 7
console.log(increment(5)); // returns NaN console.log(increment(5)); // returns NaN
` ```
سنقوم بتعديل دالة الزيادة بحيث يتم زيادة معلمة **الرقم** بمقدار 1 بشكل افتراضي ، عن طريق تعيين **القيمة** إلى 1 إذا لم يتم تمرير **قيمة للقيمة** إلى دالة الزيادة. سنقوم بتعديل دالة الزيادة بحيث يتم زيادة معلمة **الرقم** بمقدار 1 بشكل افتراضي ، عن طريق تعيين **القيمة** إلى 1 إذا لم يتم تمرير **قيمة للقيمة** إلى دالة الزيادة.
@ -40,7 +41,8 @@ localeTitle: تعيين المعلمات الافتراضية لوظائفك
## : مبتدئ: حل الرمز الأساسي: ## : مبتدئ: حل الرمز الأساسي:
`const increment = (function() { ```javascript
const increment = (function() {
"use strict"; "use strict";
return function increment(number, value = 1) { return function increment(number, value = 1) {
return number + value; return number + value;
@ -48,7 +50,7 @@ localeTitle: تعيين المعلمات الافتراضية لوظائفك
})(); })();
console.log(increment(5, 2)); // returns 7 console.log(increment(5, 2)); // returns 7
console.log(increment(5)); // returns NaN console.log(increment(5)); // returns NaN
` ```
## شرح الشفرة ## شرح الشفرة

View File

@ -16,7 +16,8 @@ localeTitle: فهم الاختلافات بين الاستيراد وتتطلب
## حل ## حل
`"use strict"; ```javascript
"use strict";
import { capitalizeString } from "string-functions"; import { capitalizeString } from "string-functions";
capitalizeString("hello!"); capitalizeString("hello!");
` ```

View File

@ -14,6 +14,7 @@ localeTitle: استخدم * لاستيراد كل شيء من ملف
## حل: ## حل:
`"use strict"; ```javascript
"use strict";
import * as str from "capitalize_strings"; import * as str from "capitalize_strings";
` ```