@WWW אמר בדומיין בחינם - איך?:
@איש-ימיני אני רואה שאף אחד עוד לא הביא את זה:
https://freenom.com
דומיינים עם סיומת ML ועוד כמה, בחינם.
כולם הביאו את זה, רק קראו לזה פרנום במקום פרינם 
@WWW אמר בדומיין בחינם - איך?:
@איש-ימיני אני רואה שאף אחד עוד לא הביא את זה:
https://freenom.com
דומיינים עם סיומת ML ועוד כמה, בחינם.
כולם הביאו את זה, רק קראו לזה פרנום במקום פרינם 
@אושפיזין כתב באתר לא מופיע במדינות אחרות:
אבל מוזר שבישראל הוא הופיע באותו יום
דומיין חדש לא אמור להופיע כל כך מהר בתוצאות חיפוש, לוקח זמן עד שבונים אימון מול גוגל.
בישראל הוא הופיע באותו יום כנראה בגלל תופעת ארגז החול של גוגל, שבימים הראשונים הם מקדמים אתר חדש לתוצאות הראשונות, ואחרי כמה זמן הם זורקים אותו לאי שם ונותנים לו לעבוד כדי להתברג בחיפוש.
אי אפשר להוכיח כלום מהימים הראשונים.
במידה ונרצה להוסיף מתודות ומאפיינים ייחודיים לאובייקטים של אקספרס, לדוגמא יוזר עם מספר נעליים, ניצור קובץ דומיין בשם types.d.ts עם התוכן הבא
declare namespace Express {
export interface Request {
user?: {
shoeSize: number
}
}
}
וכך עורך הקוד ומנוע הקימפול יכירו בו

סביבת פיתוח:
להתקין
npm i -D @types/node
npm i -D @types/express
נגדיר בקובץ package.json סקריפט בשם dev, שיריץ את הפקודה tsc --wach
"scripts": {
"dev": "tsc --watch",
"test": "echo \"Error: no test specified\" && exit 1"
},
בתיקית השורש של הפרוייקט, נוסיף את התיקיה .vscode ובתוכה שני קבצים, launch.json
{
"configurations": [
{
"name": "Launch Program",
"program": "${workspaceFolder}/app.ts",
"request": "launch",
"skipFiles": [
"<node_internals>/**"
],
"type": "node",
"preLaunchTask": "npm: dev",
}
]
}
tasks.json
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"type": "npm",
"script": "dev",
"problemMatcher": "$tsc-watch",
"isBackground": true
}
]
}
לא לשכוח להוסיף קובץ בתיקית השורש בשם tsconfig.json,
{
"compilerOptions": {
"module": "commonjs",
"esModuleInterop": true,
"target": "es2021",
"moduleResolution": "node",
"sourceMap": true,
},
"lib": ["es2015"]
}
כעת בהרצה יווצרו ליד כל קובץ ts שני קבצים, js & js.map , זה מבלבל בעין, אז נוסיף לתיקיה .vscode קןבץ בשם settings.json עם התוכן הבא
{
"files.exclude": {
"node_modules/": true,
"*.js": true,
"*.js.map": true,
},
}
וכך הקבצים המיותרים יוסתרו
@nigun אולי תלך על כיוון של שרת DNS לוקאלי
וכשאתה מקבל את בקשת המידע לדומיין אתה בודק אם זה דומיין מאושר ואם לא אתה מחזיר תשובה שגויה
@nigun מה דעתך על שימוש במפה, שהמפתחות שלה הם המזהים של המשתמשים, נראה לי יותר קריא ונקי
כל משתמש שמתחבר אתה מקים לו ערוץ, וכשהוא יתנתק אתה דואג לנתק אותו כדי לשחרר את הערוץ ולעצור את ההאזנה האינסופית
package main
import (
"fmt"
"time"
)
var usersChannels = make(map[string]chan string)
func main() {
go helloUser("A")
go helloUser("B")
time.Sleep(500)
sendDataToUser("A", "Hi")
sendDataToUser("B", "By")
time.Sleep(500)
disconnectUser("A")
sendDataToUser("A", "Hi")
time.Sleep(5000)
}
func helloUser(name string) {
usersChannels[name] = make(chan string) // כאן אתה מוסיף את הערוץ של המשתמש למפה
for {
msg, isConnected := <-usersChannels[name] // מאזין למידע מהערוץ
if !isConnected { // אם המידע הוא שהערוץ נסגר, זה אומר שהמשתמש התנתק ואפשר לעצור את הפונקציה
return
}
fmt.Println(msg)
}
}
func disconnectUser(name string) { // סוגר את הערוץ כדי לעצור את ההאזנה ומוחק את המשתמש מהמפה
close(usersChannels[name])
delete(usersChannels, name)
}
func sendDataToUser(name, data string) {
channel, hasUser := usersChannels[name]
if hasUser { // כדי למנוע מצב שהמשתמש כבר התנתק והערוץ שלו לא קיים במפה
channel <- data
}
}
@יוס אמר בשגיאה ב API מול וורדפרס:
הוספתי גם את זה ועדיין לא נפתר
איפה הוספת את זה? זה צריך להיות בדומיין השני, אם אתה פונה בבקשה מדומיין X לדומיין Y, דומיין Y צריך להוסיף את הכותרות האלה לתשובה
בלי ניסיון, תבדוק אם זה מתאים לך
https://sailsjs.com/
ואולי תעבור גם על הרשימה פה
https://www.ubuntupit.com/best-nodejs-cms-platforms/
אם אחת מהם מתאימה
@chagold אמר בסינון טקסט חופשי בarray js:
מערך בן 1000000 רשומות
console.time('a')
arr = new Array(1000000).fill({A:1})
a = arr.filter(a => a.A === 1).map(a => a.A)
console.timeEnd('a')
//a: 114.833984375ms
@chagold אמר בסינון מערך התלוי בנתוני כמה פרמטרים (שחלקם לא יגיעו) - js:
כל הרעיון אצלי הוא שאין משהו קבוע - לא סט קבוע חיובי ולא של או זה או זה, אלא תלוי אם המשתמש הזין ערך בתיבת החיפוש.
ולמה הקוד של דוד לא מספק אותך? אם המשתמש הזין ערך אז תאגד אותו לאוביקט, ואם לא אל תאגד
@ב-ל השאלה שלך תאורטית או למעשה? אם זה למעשה תפרט קצת על הסיטואציה כדי שיהיה אפשר להתאים את התשובה לצורך שלך.
לדוגמא "אני רוצה שהמשתמש יכניס טקסט ואני אחשב לו את הגימטריא"
המדיניות אבטחה של הדפדפנים היא שלא מאשרים בקשות אג'קס חוצות דומיינים, אלא אם כן השרת השני מחזיר כותרת תגובה שהוא מאשר את הבקשה.
לכן לא תוכל לשלוח בקשה ישירות מהדפדפן לשרת של מיילגן, תצטרך תיווך של שרת שלך עם דומיין זהה לדומיין של הממשק
מישהו שלח לי
https://marketplace.visualstudio.com/items?itemName=nrwl.angular-console
תוסף לVSCODE ממשק לאנגולר CLI במקום לעבוד בשורת פקודה
@אהרן לא הבנתי את הסיטואציה אז אני לא יודע מה היתה הבעיה שלך והאם היא כבר נפתרה. רק דבר אחד אני יכול להגיד, כשאתה מעביר קולבק בצורה כזו:
callToFunc(this.callback)
הקולבק מתנתק מהאבא שלו, והוא לא יזהה את הזיס שלו.
אם זו הבעיה שלך, הפיתרון הוא להעביר את הקולבק כך:
callToFunc(() => this.callback())
אני חושב שמי שמגיע בלי רקע מוקדם אין סיבה שלא להתחיל עם אנגולר ולהנות מהשכלולים שהפריימוורק מציע. זה באמת קל עם ה CLI
מקסימום אם יהיה צורך אפשר אחר כך ללמוד אנגולר JS, אחרי שיודעים אנגולר זה ממש קל ללמוד את זה.